<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-07-28T01:53:36.144230" 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-07-28T01:53:36.598163" 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-07-28T01:53:36.597769" elapsed="0.000482"/>
</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-07-28T01:53:36.601261" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:36.600926" elapsed="0.000428"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:36.600888" elapsed="0.000554"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:36.602222" 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-07-28T01:53:36.602370" 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-07-28T01:53:36.601624" elapsed="0.000779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:36.603087" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:53:36.602570" elapsed="0.000571"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:36.603815" 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-07-28T01:53:36.603286" elapsed="0.000559"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:53:36.605350" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:36.605447" 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-07-28T01:53:36.604783" elapsed="0.000712"/>
</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-07-28T01:53:36.605682" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:36.607070" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:37.355895" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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-793-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-07-28T01:53:36.606622" elapsed="0.749515"/>
</kw>
<msg time="2026-07-28T01:53:37.356298" 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-07-28T01:53:36.606238" elapsed="0.750194"/>
</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-07-28T01:53:36.604074" elapsed="0.752564"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:37.357306" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:53:38.528702" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:53:38.529072" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:53:38.529182" 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-07-28T01:53:37.356916" elapsed="1.172325"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:38.529652" elapsed="0.000720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:38.531507" 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-07-28T01:53:38.530773" elapsed="0.000997"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:38.532285" elapsed="0.000046"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:38.531969" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:38.531908" elapsed="0.000586"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:53:38.532887" elapsed="0.000078"/>
</return>
<status status="PASS" start="2026-07-28T01:53:38.532632" elapsed="0.000410"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:38.532592" elapsed="0.000508"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:38.533181" 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-07-28T01:53:38.537028" elapsed="0.000494"/>
</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-07-28T01:53:38.537717" elapsed="0.000264"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:38.538152" elapsed="0.000143"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:53:38.533900" elapsed="0.004473"/>
</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-07-28T01:53:36.600275" elapsed="1.938283"/>
</kw>
<msg time="2026-07-28T01:53:38.538640" 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-07-28T01:53:36.599472" elapsed="1.939247"/>
</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-07-28T01:53:36.598892" elapsed="1.939942"/>
</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-07-28T01:53:38.541613" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:38.541251" elapsed="0.000442"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:38.541222" elapsed="0.000507"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.542151" 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-07-28T01:53:38.542303" 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-07-28T01:53:38.541895" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:38.542953" 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.224" 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-07-28T01:53:38.542540" elapsed="0.000460"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.543558" 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-07-28T01:53:38.543126" elapsed="0.000458"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:53:38.544367" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:38.544467" 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-07-28T01:53:38.544085" 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-07-28T01:53:38.544627" elapsed="0.000329"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.545777" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:38.888687" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:37 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:38.545433" elapsed="0.343440"/>
</kw>
<msg time="2026-07-28T01:53:38.889050" 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-07-28T01:53:38.545096" elapsed="0.344077"/>
</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-07-28T01:53:38.543771" elapsed="0.345525"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.889822" 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-07-28T01:53:38.922820" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:53:38.923246" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:53:38.923419" 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-07-28T01:53:38.889530" elapsed="0.033984"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:38.924044" elapsed="0.000882"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:38.926282" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:38.925345" elapsed="0.001046"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:38.926852" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:38.926576" elapsed="0.000351"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:38.926531" elapsed="0.000442"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:53:38.927252" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-07-28T01:53:38.927053" elapsed="0.000316"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:38.927031" elapsed="0.000375"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:38.927475" elapsed="0.000023"/>
</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-07-28T01:53:38.931054" elapsed="0.000612"/>
</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-07-28T01:53:38.931924" elapsed="0.000246"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:38.932390" 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-07-28T01:53:38.927984" elapsed="0.004705"/>
</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-07-28T01:53:38.540542" elapsed="0.392281"/>
</kw>
<msg time="2026-07-28T01:53:38.932958" 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-07-28T01:53:38.539744" elapsed="0.393297"/>
</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-07-28T01:53:38.539056" elapsed="0.394103"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:36.598549" elapsed="2.334699"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.934141" 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-07-28T01:53:38.933470" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:38.935011" 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-07-28T01:53:38.934448" elapsed="0.000669"/>
</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-07-28T01:53:38.937773" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:38.937854" 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-07-28T01:53:38.937363" elapsed="0.000515"/>
</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-07-28T01:53:38.938044" elapsed="0.000435"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:38.939383" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:39.323110" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:38 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:38.939021" elapsed="0.384387"/>
</kw>
<msg time="2026-07-28T01:53:39.323521" 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-07-28T01:53:38.938635" elapsed="0.385008"/>
</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-07-28T01:53:38.936631" elapsed="0.387130"/>
</kw>
<msg time="2026-07-28T01:53:39.323814" 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-07-28T01:53:38.936026" elapsed="0.387877"/>
</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-07-28T01:53:38.935372" elapsed="0.388612"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:39.324772" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-07-28T01:53:39.347607" 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-07-28T01:53:39.324222" elapsed="0.023537"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:39.389161" level="INFO">sudo mn --controller=remote,ip=10.30.170.50 --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-07-28T01:53:39.348118" elapsed="0.041135"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:39.699750" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.50: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-07-28T01:53:39.389508" elapsed="0.310402"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-07-28T01:53:36.596160" elapsed="3.103860"/>
</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-07-28T01:53:39.736688" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0607810&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-07-28T01:53:39.736218" elapsed="0.000733"/>
</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-07-28T01:53:40.988488" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:53:40.991166" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0wgm6fcgcp93m1s8f729myh7860.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53:40 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":44762,"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":"3","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-07-28T01:53:40.991763" 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-07-28T01:53:39.744597" elapsed="1.247234"/>
</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-07-28T01:53:40.992921" elapsed="0.000066"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:40.992074" elapsed="0.000988"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:41.000191" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"3","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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":744000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":733000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.463Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"4","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":"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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"62:1a:8e:30:fc:02","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ea:37:6d:6a:7b:42","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":726000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:40.993510" elapsed="0.007739"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:40.993130" elapsed="0.008180"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:40.992010" elapsed="0.009341"/>
</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-07-28T01:53:41.001608" elapsed="0.000384"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:53:41.006962" level="FAIL">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"3","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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":744000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":733000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.463Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"4","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":"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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"62:1a:8e:30:fc:02","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ea:37:6d:6a:7b:42","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":726000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}' does not contain 'openflow: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-07-28T01:53:41.002527" elapsed="0.005704">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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...
    [ Message content over the limit has been removed. ]
...":"","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":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}' does not contain 'openflow:1'</status>
</kw>
<var name="${i}">openflow:1</var>
<status status="FAIL" start="2026-07-28T01:53:41.002321" elapsed="0.006038">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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...
    [ Message content over the limit has been removed. ]
...":"","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":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}' does not contain 'openflow:1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:53:41.002092" elapsed="0.006392">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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...
    [ Message content over the limit has been removed. ]
...":"","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":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}' does not contain 'openflow:1'</status>
</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-07-28T01:53:39.744141" elapsed="1.264544">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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...
    [ Message content over the limit has been removed. ]
...":"","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":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}' does not contain 'openflow:1'</status>
</kw>
<kw name="Check For Elements At URI" owner="Utils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:43.053509" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.054359" level="INFO">GET Response : url=http://10.30.170.50: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":44762,"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":"3","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-07-28T01:53:43.054755" 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-07-28T01:53:43.022220" elapsed="0.032578"/>
</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-07-28T01:53:43.055565" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.054983" elapsed="0.000674"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.059547" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"3","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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":744000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":733000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.463Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44770,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":6000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","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-07-28T01:53:41.527Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:f1:a3:2d:98:8e","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":"6","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":2,"nanosecond":18000000},"bytes":{"transmitted":"511","received":"511"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:0e:64:93:c6:43","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":2,"nanosecond":8000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"06:c4:f5:7c:79:a1","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":2,"nanosecond":18000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:41.687Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"4","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":"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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"62:1a:8e:30:fc:02","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ea:37:6d:6a:7b:42","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":726000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.055904" elapsed="0.005135"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:43.055698" elapsed="0.005439"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.054935" elapsed="0.006236"/>
</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-07-28T01:53:43.061360" elapsed="0.000287"/>
</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-07-28T01:53:43.062145" elapsed="0.003813"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:53:43.061955" elapsed="0.004062"/>
</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-07-28T01:53:43.066317" elapsed="0.004601"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:53:43.066143" elapsed="0.004842"/>
</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-07-28T01:53:43.071414" elapsed="0.003136"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:53:43.071152" elapsed="0.003441"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:43.061742" elapsed="0.012886"/>
</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-07-28T01:53:43.021441" elapsed="0.053263"/>
</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-07-28T01:53:39.737585" elapsed="3.337175"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-07-28T01:53:39.737057" elapsed="3.337859"/>
</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-07-28T01:53:43.106344" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.107858" level="INFO">GET Response : url=http://10.30.170.50: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":44762,"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":"3","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-07-28T01:53:43.108604" 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-07-28T01:53:43.085308" elapsed="0.023393"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.114698" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"3","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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":744000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":733000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.463Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44770,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":6000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","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-07-28T01:53:41.527Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:f1:a3:2d:98:8e","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":"6","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":2,"nanosecond":18000000},"bytes":{"transmitted":"511","received":"511"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:0e:64:93:c6:43","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":2,"nanosecond":8000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"06:c4:f5:7c:79:a1","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":2,"nanosecond":18000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:41.687Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"4","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":"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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"62:1a:8e:30:fc:02","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ea:37:6d:6a:7b:42","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":726000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.109232" elapsed="0.006958"/>
</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-07-28T01:53:43.116394" elapsed="0.000293"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.120419" 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-07-28T01:53:43.116894" elapsed="0.004207"/>
</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-07-28T01:53:43.084866" elapsed="0.036336"/>
</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-07-28T01:53:43.075722" elapsed="0.045560"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.123083" 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-07-28T01:53:43.122351" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:53:43.123485" elapsed="0.000058"/>
</return>
<status status="PASS" start="2026-07-28T01:53:43.123245" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.123212" elapsed="0.000414"/>
</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-07-28T01:53:43.123818" 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-07-28T01:53:43.124050" elapsed="0.000045"/>
</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-07-28T01:53:43.124357" elapsed="0.000044"/>
</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-07-28T01:53:43.124675" elapsed="0.000039"/>
</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-07-28T01:53:43.124934" elapsed="0.000039"/>
</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-07-28T01:53:43.125202" elapsed="0.000051"/>
</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-07-28T01:53:43.125504" elapsed="0.000040"/>
</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-07-28T01:53:43.125890" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.125670" elapsed="0.000296"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:53:43.125636" elapsed="0.000363"/>
</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-07-28T01:53:43.121858" elapsed="0.004213"/>
</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-07-28T01:53:43.075170" elapsed="0.050968"/>
</test>
<test id="s1-s1-s1-t3" name="Get node 1 inventory" line="50">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.127718" 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-07-28T01:53:43.127015" elapsed="0.000743"/>
</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-07-28T01:53:43.152675" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.153444" level="INFO">GET Response : url=http://10.30.170.50: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":44770,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":6000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","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,"opendayl... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:43.153907" 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-07-28T01:53:43.136829" elapsed="0.017123"/>
</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-07-28T01:53:43.154651" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.154112" elapsed="0.000628"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.159120" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":44770,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":6000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"11","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-07-28T01:53:41.527Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:f1:a3:2d:98:8e","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":"6","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":2,"nanosecond":18000000},"bytes":{"transmitted":"511","received":"511"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"b6:0e:64:93:c6:43","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":2,"nanosecond":8000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"06:c4:f5:7c:79:a1","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":2,"nanosecond":18000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:41.687Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.155022" elapsed="0.004802"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:43.154778" elapsed="0.005116"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.154072" elapsed="0.005868"/>
</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-07-28T01:53:43.160174" elapsed="0.000398"/>
</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-07-28T01:53:43.161258" elapsed="0.004094"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.160997" elapsed="0.004431"/>
</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-07-28T01:53:43.165864" elapsed="0.003350"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.165626" elapsed="0.003630"/>
</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-07-28T01:53:43.169481" elapsed="0.002382"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.169346" elapsed="0.002557"/>
</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-07-28T01:53:43.172178" elapsed="0.002405"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.172057" 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-07-28T01:53:43.174832" elapsed="0.002386"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:43.174713" 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-07-28T01:53:43.177475" elapsed="0.002381"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:43.177341" elapsed="0.002556"/>
</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-07-28T01:53:43.180099" elapsed="0.002465"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:43.179979" elapsed="0.002630"/>
</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-07-28T01:53:43.182829" elapsed="0.002407"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-07-28T01:53:43.182696" 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-07-28T01:53:43.185493" elapsed="0.002385"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-07-28T01:53:43.185360" elapsed="0.002558"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:43.160705" elapsed="0.027245"/>
</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-07-28T01:53:43.136192" elapsed="0.051834"/>
</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-07-28T01:53:43.127985" elapsed="0.060098"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:43.126447" elapsed="0.061790"/>
</test>
<test id="s1-s1-s1-t4" name="Get node 2 inventory" line="61">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.189551" 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-07-28T01:53:43.189088" elapsed="0.000493"/>
</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-07-28T01:53:43.207276" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.207772" level="INFO">GET Response : url=http://10.30.170.50: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":44766,"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":"4","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-07-28T01:53:43.208041" 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-07-28T01:53:43.196750" elapsed="0.011319"/>
</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-07-28T01:53:43.208520" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.208168" elapsed="0.000411"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.211085" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"4","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":"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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"62:1a:8e:30:fc:02","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ea:37:6d:6a:7b:42","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":726000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":"4","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":730000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.451Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.208738" elapsed="0.002738"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:43.208610" elapsed="0.002903"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.208143" elapsed="0.003393"/>
</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-07-28T01:53:43.211662" elapsed="0.000177"/>
</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-07-28T01:53:43.212196" elapsed="0.002608"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.212065" elapsed="0.002780"/>
</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-07-28T01:53:43.215048" elapsed="0.002491"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.214929" elapsed="0.002653"/>
</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-07-28T01:53:43.217783" elapsed="0.002390"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.217665" elapsed="0.002549"/>
</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-07-28T01:53:43.220415" elapsed="0.002447"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.220297" elapsed="0.002606"/>
</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-07-28T01:53:43.223102" elapsed="0.002394"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:43.222985" elapsed="0.002553"/>
</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-07-28T01:53:43.225742" elapsed="0.002386"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:43.225625" elapsed="0.002544"/>
</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-07-28T01:53:43.228367" elapsed="0.002394"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:43.228251" 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-07-28T01:53:43.231001" elapsed="0.002401"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-07-28T01:53:43.230884" elapsed="0.002559"/>
</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-07-28T01:53:43.233661" elapsed="0.002375"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-07-28T01:53:43.233542" elapsed="0.002535"/>
</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-07-28T01:53:43.236275" elapsed="0.002396"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-07-28T01:53:43.236158" elapsed="0.002554"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:43.211905" elapsed="0.026837"/>
</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-07-28T01:53:43.196211" elapsed="0.042597"/>
</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-07-28T01:53:43.189760" elapsed="0.049101"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:43.188625" elapsed="0.050375"/>
</test>
<test id="s1-s1-s1-t5" name="Get node 3 inventory" line="72">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.240256" 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-07-28T01:53:43.239816" elapsed="0.000470"/>
</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-07-28T01:53:43.258080" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.259160" level="INFO">GET Response : url=http://10.30.170.50: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":44762,"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":"3","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-07-28T01:53:43.259729" 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-07-28T01:53:43.247194" elapsed="0.012597"/>
</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-07-28T01:53:43.260699" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.259990" elapsed="0.000841"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.266480" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"3","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-07-28T01:53:40.243Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":744000000},"bytes":{"transmitted":"261","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":745000000},"bytes":{"transmitted":"351","received":"266"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":733000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:40.463Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.261163" elapsed="0.006160"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:43.260887" elapsed="0.006518"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.259942" elapsed="0.007539"/>
</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-07-28T01:53:43.267815" elapsed="0.000392"/>
</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-07-28T01:53:43.268810" elapsed="0.002408"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.268678" 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-07-28T01:53:43.271482" elapsed="0.002571"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.271343" elapsed="0.002751"/>
</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-07-28T01:53:43.274294" elapsed="0.002412"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.274176" elapsed="0.002571"/>
</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-07-28T01:53:43.276945" elapsed="0.002390"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:43.276828" elapsed="0.002547"/>
</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-07-28T01:53:43.279610" elapsed="0.002374"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:43.279471" elapsed="0.002553"/>
</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-07-28T01:53:43.282223" elapsed="0.002386"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:43.282107" elapsed="0.002543"/>
</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-07-28T01:53:43.284865" elapsed="0.002397"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:43.284732" 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-07-28T01:53:43.287539" elapsed="0.002378"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-07-28T01:53:43.287397" elapsed="0.002561"/>
</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-07-28T01:53:43.290159" elapsed="0.002430"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-07-28T01:53:43.290041" elapsed="0.002589"/>
</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-07-28T01:53:43.292828" elapsed="0.002385"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-07-28T01:53:43.292711" elapsed="0.002542"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:43.268347" elapsed="0.026937"/>
</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-07-28T01:53:43.246677" elapsed="0.048672"/>
</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-07-28T01:53:43.240478" elapsed="0.054924"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:43.239334" elapsed="0.056239"/>
</test>
<test id="s1-s1-s1-t6" name="Link Down" line="83">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:43.298347" 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-07-28T01:53:43.296504" elapsed="0.001901"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:43.300866" 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-07-28T01:53:43.298568" elapsed="0.002353"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.301359" 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-07-28T01:53:43.301062" elapsed="0.000323"/>
</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-07-28T01:53:43.321931" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:43.322448" level="INFO">GET Response : url=http://10.30.170.50: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': '610'} 
 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":"2a:f1:a3:2d:98:8e","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":false}}]} 
 </msg>
<msg time="2026-07-28T01:53:43.322863" 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-07-28T01:53:43.308313" elapsed="0.014614"/>
</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-07-28T01:53:43.323946" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:43.323144" elapsed="0.000940"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.329516" 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":"2a:f1:a3:2d:98:8e","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":false}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:43.324440" elapsed="0.005197"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:43.324146" elapsed="0.005570"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:43.323090" elapsed="0.006676"/>
</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-07-28T01:53:43.330040" elapsed="0.000382"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:53:43.333673" level="FAIL">'{"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":"2a:f1:a3:2d:98:8e","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":false}}]}' 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-07-28T01:53:43.331184" elapsed="0.002589">'{"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":"2a:f1:a3:2d:98:8e","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":false}}]}' does not contain '"link-down":true'</status>
</kw>
<var name="${i}">"link-down":true</var>
<status status="FAIL" start="2026-07-28T01:53:43.330910" elapsed="0.002942">'{"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":"2a:f1:a3:2d:98:8e","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":false}}]}' does not contain '"link-down":true'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:53:43.330593" elapsed="0.003326">'{"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":"2a:f1:a3:2d:98:8e","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":false}}]}' 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-07-28T01:53:43.307796" elapsed="0.026237">'{"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":"2a:f1:a3:2d:98:8e","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":false}}]}' 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-07-28T01:53:45.355087" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.355440" level="INFO">GET Response : url=http://10.30.170.50: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":"2a:f1:a3:2d:98:8e","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":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":906000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-07-28T01:53:45.355705" 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-07-28T01:53:45.346506" elapsed="0.009241"/>
</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-07-28T01:53:45.356435" elapsed="0.000065"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.355909" elapsed="0.000642"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.360093" 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":"2a:f1:a3:2d:98:8e","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":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":906000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:45.356791" elapsed="0.003384"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.356592" elapsed="0.003636"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.355869" elapsed="0.004393"/>
</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-07-28T01:53:45.360445" elapsed="0.000290"/>
</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-07-28T01:53:45.361248" elapsed="0.003032"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-07-28T01:53:45.361051" elapsed="0.003272"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.360835" elapsed="0.003522"/>
</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-07-28T01:53:45.345836" elapsed="0.018588"/>
</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-07-28T01:53:43.301556" elapsed="2.062941"/>
</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-07-28T01:53:45.379098" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.379382" level="INFO">GET Response : url=http://10.30.170.50: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":"62:1a:8e:30:fc:02","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":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":702000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}]} 
 </msg>
<msg time="2026-07-28T01:53:45.379525" 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-07-28T01:53:45.371475" elapsed="0.008078"/>
</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-07-28T01:53:45.379985" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.379657" elapsed="0.000388"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.382362" 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":"62:1a:8e:30:fc:02","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":"7","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":3,"nanosecond":702000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:45.380207" elapsed="0.002209"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.380072" elapsed="0.002378"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.379630" elapsed="0.002859"/>
</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-07-28T01:53:45.382616" elapsed="0.000177"/>
</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-07-28T01:53:45.383138" elapsed="0.002929"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-07-28T01:53:45.383009" elapsed="0.003186"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.382862" elapsed="0.003379"/>
</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-07-28T01:53:45.370918" elapsed="0.015406"/>
</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-07-28T01:53:45.364675" elapsed="0.021720"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-07-28T01:53:43.296074" elapsed="2.090522"/>
</test>
<test id="s1-s1-s1-t7" name="Link Up" line="101">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.389910" 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-07-28T01:53:45.387596" elapsed="0.002401"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.393208" 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-07-28T01:53:45.390209" elapsed="0.003079"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.393950" 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-07-28T01:53:45.393511" elapsed="0.000478"/>
</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-07-28T01:53:45.408420" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.408679" level="INFO">GET Response : url=http://10.30.170.50: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":"2a:f1:a3:2d:98:8e","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-07-28T01:53:45.408785" 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-07-28T01:53:45.401413" elapsed="0.007398"/>
</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-07-28T01:53:45.409229" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.408905" elapsed="0.000382"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.411853" 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":"2a:f1:a3:2d:98:8e","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-07-28T01:53:45.409438" elapsed="0.002468"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.409314" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.408882" elapsed="0.003081"/>
</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-07-28T01:53:45.412086" 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-07-28T01:53:45.412600" elapsed="0.002164"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-07-28T01:53:45.412471" elapsed="0.002334"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.412319" elapsed="0.002517"/>
</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-07-28T01:53:45.400904" elapsed="0.013990"/>
</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-07-28T01:53:45.394218" elapsed="0.020728"/>
</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-07-28T01:53:45.434373" level="INFO">GET Request : url=http://10.30.170.50: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=node0wgm6fcgcp93m1s8f729myh7860.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.434636" level="INFO">GET Response : url=http://10.30.170.50: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":"62:1a:8e:30:fc:02","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-07-28T01:53:45.434826" 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-07-28T01:53:45.424929" elapsed="0.009926"/>
</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-07-28T01:53:45.435332" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.434977" elapsed="0.000416"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.437750" 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":"62:1a:8e:30:fc:02","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-07-28T01:53:45.435577" elapsed="0.002224"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.435422" elapsed="0.002415"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.434937" elapsed="0.002923"/>
</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-07-28T01:53:45.437985" elapsed="0.000176"/>
</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-07-28T01:53:45.438516" elapsed="0.002810"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-07-28T01:53:45.438363" elapsed="0.003025"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.438224" elapsed="0.003212"/>
</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-07-28T01:53:45.424162" elapsed="0.017386"/>
</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-07-28T01:53:45.415142" elapsed="0.026486"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-07-28T01:53:45.387013" elapsed="0.054809"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:53:45.442928" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:53:45.442795" elapsed="0.000249"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-07-28T01:53:39.700112" elapsed="5.742985"/>
</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-07-28T01:53:45.477109" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b06319d0&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-07-28T01:53:45.476739" elapsed="0.000565"/>
</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-07-28T01:53:45.498963" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:53:45.499495" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0e0ujhm03dhceikou1avznl671.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53: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': '3294'} 
 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: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']"}]},{"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: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-07-28T01:53:45.499736" 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-07-28T01:53:45.484404" elapsed="0.015362"/>
</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-07-28T01:53:45.500243" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.499880" elapsed="0.000425"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.503094" 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: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']"}]},{"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: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-07-28T01:53:45.500495" elapsed="0.002671"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.500333" elapsed="0.002869"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.499852" elapsed="0.003373"/>
</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-07-28T01:53:45.503352" elapsed="0.000195"/>
</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-07-28T01:53:45.503892" elapsed="0.002362"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:53:45.503757" 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-07-28T01:53:45.506514" elapsed="0.002336"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:53:45.506380" elapsed="0.002512"/>
</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-07-28T01:53:45.509093" elapsed="0.002298"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:53:45.508975" elapsed="0.002457"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.503611" elapsed="0.007874"/>
</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-07-28T01:53:45.483983" elapsed="0.027565"/>
</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-07-28T01:53:45.477902" elapsed="0.033698"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:45.520711" level="INFO">GET Request : url=http://10.30.170.50: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=node0e0ujhm03dhceikou1avznl671.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.521132" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:53:45.521306" 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-07-28T01:53:45.511747" elapsed="0.009586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.523731" 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: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']"}]},{"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: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-07-28T01:53:45.521501" elapsed="0.002300"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-07-28T01:53:45.477392" elapsed="0.046537"/>
</test>
<test id="s1-s1-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.525111" 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-07-28T01:53:45.524712" elapsed="0.000432"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.525728" 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-07-28T01:53:45.525327" elapsed="0.000435"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.526525" 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-07-28T01:53:45.525959" elapsed="0.000598"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.527054" 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-07-28T01:53:45.526727" elapsed="0.000369"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.527563" 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-07-28T01:53:45.527240" elapsed="0.000350"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.528044" 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-07-28T01:53:45.527742" elapsed="0.000328"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.528649" 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-07-28T01:53:45.528216" elapsed="0.000464"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.529153" 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-07-28T01:53:45.528840" elapsed="0.000362"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.529740" 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-07-28T01:53:45.529374" elapsed="0.000394"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.530340" 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-07-28T01:53:45.529986" elapsed="0.000384"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.531069" 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-07-28T01:53:45.530616" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.531622" 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-07-28T01:53:45.531265" elapsed="0.000401"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.532128" 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-07-28T01:53:45.531818" elapsed="0.000335"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.532620" 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-07-28T01:53:45.532301" elapsed="0.000345"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.533190" 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-07-28T01:53:45.532795" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.533704" 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-07-28T01:53:45.533369" elapsed="0.000377"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.534279" 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-07-28T01:53:45.533886" elapsed="0.000421"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:45.541551" level="INFO">GET Request : url=http://10.30.170.50: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=node0e0ujhm03dhceikou1avznl671.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.541992" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:53:45.542113" 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-07-28T01:53:45.535368" elapsed="0.006774"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.545707" level="INFO">{"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: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']"}]},{"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: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-07-28T01:53:45.542494" elapsed="0.003310"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.550030" level="INFO">${json_data} = {'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']",...</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-07-28T01:53:45.549338" elapsed="0.000732"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:53:45.550152" elapsed="0.000061"/>
</return>
<msg time="2026-07-28T01:53:45.550506" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:53:45.546080" elapsed="0.004467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.551085" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:53:45.550791" elapsed="0.000371"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.551585" level="INFO">${content} = [{'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...</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-07-28T01:53:45.551336" elapsed="0.000277"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:53:45.551990" level="INFO">${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'...</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-07-28T01:53:45.551757" elapsed="0.000261"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.552346" 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-07-28T01:53:45.552157" 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-07-28T01:53:45.552726" elapsed="0.000337"/>
</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-07-28T01:53:45.552606" elapsed="0.000497"/>
</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-07-28T01:53:45.553506" 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-07-28T01:53:45.553196" elapsed="0.000670"/>
</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-07-28T01:53:45.554073" elapsed="0.000324"/>
</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-07-28T01:53:45.553956" elapsed="0.000480"/>
</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-07-28T01:53:45.554664" elapsed="0.000310"/>
</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-07-28T01:53:45.554547" elapsed="0.000465"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:53:45.552435" elapsed="0.002608"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:53:45.535050" elapsed="0.020049"/>
</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-07-28T01:53:45.534492" elapsed="0.020651"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-07-28T01:53:45.524253" elapsed="0.031009"/>
</test>
<test id="s1-s1-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.557775" 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-07-28T01:53:45.555960" elapsed="0.001871"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.562015" 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-07-28T01:53:45.557974" elapsed="0.004097"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.562587" 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-07-28T01:53:45.562209" elapsed="0.000406"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:45.578824" level="INFO">GET Request : url=http://10.30.170.50: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=node0e0ujhm03dhceikou1avznl671.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.579839" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:53:45.580187" 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-07-28T01:53:45.563596" elapsed="0.016647"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.585846" level="INFO">{"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: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']"}]},{"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: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-07-28T01:53:45.580607" elapsed="0.005391"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.591820" level="INFO">${json_data} = {'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']",...</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-07-28T01:53:45.591281" elapsed="0.000568"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:53:45.591904" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:53:45.592119" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:53:45.586481" elapsed="0.005665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.592591" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:53:45.592287" elapsed="0.000406"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.593059" level="INFO">${content} = [{'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...</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-07-28T01:53:45.592833" elapsed="0.000253"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:53:45.593467" level="INFO">${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'...</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-07-28T01:53:45.593228" elapsed="0.000268"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.593826" 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-07-28T01:53:45.593636" elapsed="0.000217"/>
</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-07-28T01:53:45.594202" elapsed="0.000363"/>
</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-07-28T01:53:45.594071" elapsed="0.000534"/>
</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-07-28T01:53:45.594817" elapsed="0.000311"/>
</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-07-28T01:53:45.594700" elapsed="0.000467"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:53:45.593916" elapsed="0.001282"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:53:45.563269" elapsed="0.031983"/>
</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-07-28T01:53:45.562773" elapsed="0.032523"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.597209" 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-07-28T01:53:45.595436" elapsed="0.001829"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.616406" level="INFO">_uuid               : d1339288-24ed-44dd-9320-b329c7e35369
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          : "2a:f1:a3:2d:98:8e"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
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=601, tx_dropped=0, tx_errors=0, tx_packets=7}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-07-28T01:53:45.616524" level="INFO">${output} = _uuid               : d1339288-24ed-44dd-9320-b329c7e35369
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-07-28T01:53:45.597409" elapsed="0.019143"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.616941" level="INFO">_uuid               : d1339288-24ed-44dd-9320-b329c7e35369
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          : "2a:f1:a3:2d:98:8e"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
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=601, tx_dropped=0, tx_errors=0, tx_packets=7}
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-07-28T01:53:45.616692" elapsed="0.000306"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.618674" 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-07-28T01:53:45.617129" elapsed="0.001600"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.637258" level="INFO">_uuid               : fc612b6f-6212-4f53-945f-7865d2081458
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          : "06:c4:f5:7c:79:a1"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=686, 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=8, tx_bytes=686, tx_dropped=0, tx_errors=0, tx_packets=8}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-07-28T01:53:45.637431" level="INFO">${output} = _uuid               : fc612b6f-6212-4f53-945f-7865d2081458
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-07-28T01:53:45.618870" elapsed="0.018608"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.637921" level="INFO">_uuid               : fc612b6f-6212-4f53-945f-7865d2081458
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          : "06:c4:f5:7c:79:a1"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=686, 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=8, tx_bytes=686, tx_dropped=0, tx_errors=0, tx_packets=8}
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-07-28T01:53:45.637640" elapsed="0.000375"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-07-28T01:53:45.555563" elapsed="0.082577"/>
</test>
<test id="s1-s1-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.640170" 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-07-28T01:53:45.638904" elapsed="0.001322"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:45.651409" 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-07-28T01:53:45.640365" elapsed="0.011118"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.652037" 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-07-28T01:53:45.651627" elapsed="0.000438"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:45.659898" level="INFO">GET Request : url=http://10.30.170.50: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=node0e0ujhm03dhceikou1avznl671.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.660373" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:53:45.660526" 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-07-28T01:53:45.653480" elapsed="0.007072"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.663934" level="INFO">{"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: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']"}]},{"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: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-07-28T01:53:45.660727" elapsed="0.003355"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.668373" level="INFO">${json_data} = {'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']",...</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-07-28T01:53:45.667702" elapsed="0.000712"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:53:45.668510" elapsed="0.000059"/>
</return>
<msg time="2026-07-28T01:53:45.668811" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:53:45.664353" elapsed="0.004495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.669436" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:53:45.669038" elapsed="0.000513"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.670090" level="INFO">${content} = [{'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...</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-07-28T01:53:45.669744" elapsed="0.000383"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:53:45.670651" level="INFO">${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'...</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-07-28T01:53:45.670322" elapsed="0.000356"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:45.671005" 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-07-28T01:53:45.670816" 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-07-28T01:53:45.671367" elapsed="0.000360"/>
</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-07-28T01:53:45.671249" elapsed="0.000517"/>
</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-07-28T01:53:45.671976" 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-07-28T01:53:45.671860" 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-07-28T01:53:45.672544" elapsed="0.000313"/>
</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-07-28T01:53:45.672414" elapsed="0.000482"/>
</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-07-28T01:53:45.673136" 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-07-28T01:53:45.673021" elapsed="0.000478"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:53:45.671093" elapsed="0.002437"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:53:45.653135" elapsed="0.020450"/>
</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-07-28T01:53:45.652229" elapsed="0.021400"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-07-28T01:53:45.638492" elapsed="0.035251"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:53:45.674329" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:53:45.674249" elapsed="0.000154"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-07-28T01:53:45.444263" elapsed="0.230174"/>
</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-07-28T01:53:45.705937" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b066bc50&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-07-28T01:53:45.705529" elapsed="0.000618"/>
</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-07-28T01:53:45.731807" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:53:45.733577" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0163bk0p0426fb1ksgdts7dnzio2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53:45 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":44762,"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":"12","byte-count":"1011","duration":{"second":2,"nanosecond":948000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","active-flows":1,"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"}},{"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:45.734361" 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-07-28T01:53:45.713195" elapsed="0.021245"/>
</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-07-28T01:53:45.735571" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.734803" elapsed="0.000869"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.742866" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":44762,"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":"12","byte-count":"1011","duration":{"second":2,"nanosecond":948000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","active-flows":1,"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":"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-07-28T01:53:43.320Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"a6:d2:6c:9b:71:e3","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":696000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"8a:4a:e5:56:54:b2","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":695000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"9e:a3:4d:44:eb:fb","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":696000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"42:1f:85:54:97: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":684000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:43.375Z"}},{"id":"openflow:1","flow-node-inventory:port-number":44770,"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":"2","byte-count":"175","duration":{"second":3,"nanosecond":7000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"13","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-07-28T01:53:44.536Z"},"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":"2a:f1:a3:2d:98:8e","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:0e:64:93:c6:43","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":896000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"06:c4:f5:7c:79:a1","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":"8","received":"8"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":4,"nanosecond":906000000},"bytes":{"transmitted":"686","received":"686"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:44.572Z"}},{"id":"openflow:2","flow-node-inventory:port-number":44766,"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":"11","byte-count":"921","duration":{"second":2,"nanosecond":938000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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-07-28T01:53:43.320Z"},"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":"62:1a:8e:30:fc:02","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":"ea:37:6d:6a:7b:42","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":698000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"d2:c8:81:11:ab:06","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":702000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"72:a6:94:e0:cc:e0","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":702000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:43.391Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:45.735995" elapsed="0.008440"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.735714" elapsed="0.008798"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.734750" elapsed="0.009797"/>
</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-07-28T01:53:45.744799" elapsed="0.000266"/>
</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-07-28T01:53:45.745749" elapsed="0.003094"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:53:45.745430" elapsed="0.003457"/>
</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-07-28T01:53:45.749150" elapsed="0.003064"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:53:45.748984" elapsed="0.003276"/>
</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-07-28T01:53:45.752496" elapsed="0.002688"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:53:45.752347" elapsed="0.002923"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:45.745218" elapsed="0.010084"/>
</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-07-28T01:53:45.712790" elapsed="0.042579"/>
</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-07-28T01:53:45.706703" elapsed="0.048718"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-07-28T01:53:45.706230" elapsed="0.049357"/>
</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-07-28T01:53:45.774307" level="INFO">GET Request : url=http://10.30.170.50: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=node0163bk0p0426fb1ksgdts7dnzio2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.775204" level="INFO">GET Response : url=http://10.30.170.50: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":44770,"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":"2","byte-count":"175","duration":{"second":3,"nanosecond":7000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"13","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-07-28T01:53:45.775673" 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-07-28T01:53:45.761102" elapsed="0.014613"/>
</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-07-28T01:53:45.776018" elapsed="0.003969"/>
</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-07-28T01:53:45.780250" elapsed="0.003260"/>
</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-07-28T01:53:45.760716" elapsed="0.022873"/>
</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-07-28T01:53:45.756679" elapsed="0.026966"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:53:45.756090" elapsed="0.027741"/>
</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-07-28T01:53:45.801416" level="INFO">GET Request : url=http://10.30.170.50: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=node0163bk0p0426fb1ksgdts7dnzio2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.802210" level="INFO">GET Response : url=http://10.30.170.50: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":44766,"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":"11","byte-count":"921","duration":{"second":2,"nanosecond":938000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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,"op... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:45.802610" 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-07-28T01:53:45.788879" elapsed="0.013774"/>
</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-07-28T01:53:45.802961" elapsed="0.003718"/>
</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-07-28T01:53:45.806900" elapsed="0.003394"/>
</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-07-28T01:53:45.788480" elapsed="0.021919"/>
</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-07-28T01:53:45.784746" elapsed="0.025752"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:53:45.784096" elapsed="0.026598"/>
</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-07-28T01:53:45.830203" level="INFO">GET Request : url=http://10.30.170.50: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=node0163bk0p0426fb1ksgdts7dnzio2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.831143" level="INFO">GET Response : url=http://10.30.170.50: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":44762,"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":"12","byte-count":"1011","duration":{"second":2,"nanosecond":948000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","active-flows":1,"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,"o... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:45.831626" 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-07-28T01:53:45.816958" elapsed="0.014724"/>
</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-07-28T01:53:45.832076" elapsed="0.004334"/>
</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-07-28T01:53:45.836730" elapsed="0.004574"/>
</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-07-28T01:53:45.816496" elapsed="0.025003"/>
</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-07-28T01:53:45.811816" elapsed="0.029766"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:53:45.811152" elapsed="0.030673"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:53:45.842922" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:53:45.842745" elapsed="0.000310"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-07-28T01:53:45.675199" elapsed="0.167909"/>
</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-07-28T01:53:45.881366" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0683d50&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-07-28T01:53:45.880760" elapsed="0.000857"/>
</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-07-28T01:53:45.910912" level="INFO">PUT Request : url=http://10.30.170.50: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-07-28T01:53:45.911197" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0/flow=152 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01o35hz1sj5o3z1iy7ur1el9qny3.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53:45 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.911603" 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-07-28T01:53:45.882568" elapsed="0.029112"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-07-28T01:53:45.881781" elapsed="0.030321"/>
</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-07-28T01:53:45.930930" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.931677" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:53:45.932008" 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-07-28T01:53:45.914355" elapsed="0.017727"/>
</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-07-28T01:53:45.932703" elapsed="0.006002"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:53:45.912743" elapsed="0.026332"/>
</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-07-28T01:53:45.942398" 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-07-28T01:53:45.941396" elapsed="0.001111"/>
</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-07-28T01:53:45.964405" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:45.964859" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:53:45.965003" 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-07-28T01:53:45.951096" elapsed="0.013944"/>
</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-07-28T01:53:45.965748" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:45.965228" elapsed="0.000605"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:45.969087" 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-07-28T01:53:45.966044" elapsed="0.003113"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:45.965871" elapsed="0.003382"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:45.965187" elapsed="0.004102"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:45.969823" level="FAIL">Url: http://10.30.170.50: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-07-28T01:53:45.969484" elapsed="0.001482">Url: http://10.30.170.50: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-07-28T01:53:45.971397" elapsed="0.000032"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-07-28T01:53:45.971225" elapsed="0.000276"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-07-28T01:53:45.971126" elapsed="0.000422"/>
</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-07-28T01:53:45.950321" elapsed="0.021382">Url: http://10.30.170.50: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-07-28T01:53:47.986601" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:47.986899" level="INFO">GET Response : url=http://10.30.170.50: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":1,"nanosecond":620000000}},"flags":""}]} 
 </msg>
<msg time="2026-07-28T01:53:47.987060" 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-07-28T01:53:47.977281" elapsed="0.009808"/>
</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-07-28T01:53:47.987612" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:47.987210" elapsed="0.000466"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:47.990013" 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":1,"nanosecond":620000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:47.987864" elapsed="0.002205"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:47.987702" elapsed="0.002403"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:47.987182" elapsed="0.002946"/>
</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-07-28T01:53:47.990256" elapsed="0.000181"/>
</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-07-28T01:53:47.990806" elapsed="0.002266"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-07-28T01:53:47.990664" elapsed="0.002467"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:47.990516" elapsed="0.002660"/>
</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-07-28T01:53:47.976415" elapsed="0.016845"/>
</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-07-28T01:53:45.942909" elapsed="2.050424"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:53:45.939691" elapsed="2.053923"/>
</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-07-28T01:53:48.011375" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:48.011491" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:53:48.011697" 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-07-28T01:53:47.994417" elapsed="0.017323"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-07-28T01:53:47.993879" elapsed="0.018050"/>
</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-07-28T01:53:48.021216" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:48.021446" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:53:48.021624" 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-07-28T01:53:48.013069" elapsed="0.008594"/>
</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-07-28T01:53:48.021917" elapsed="0.003506"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:53:48.012358" elapsed="0.013267"/>
</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-07-28T01:53:48.027190" 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-07-28T01:53:48.026786" elapsed="0.000465"/>
</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-07-28T01:53:48.043375" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:48.047651" level="INFO">GET Response : url=http://10.30.170.50: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': '1095'} 
 body={"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]} 
 </msg>
<msg time="2026-07-28T01:53:48.047808" 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-07-28T01:53:48.037548" elapsed="0.010287"/>
</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-07-28T01:53:48.048372" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:48.047951" elapsed="0.000498"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:48.052677" level="INFO">{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:48.048634" elapsed="0.004130"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:48.048495" elapsed="0.004393"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:48.047921" elapsed="0.005004"/>
</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-07-28T01:53:48.053279" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:48.053221" elapsed="0.000121"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:53:48.053200" elapsed="0.000172"/>
</if>
<status status="NOT RUN" start="2026-07-28T01:53:48.053015" elapsed="0.000390"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:48.052990" elapsed="0.000445"/>
</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-07-28T01:53:48.053647" elapsed="0.000262"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:53:48.058369" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:48.054401" elapsed="0.004128">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-07-28T01:53:48.054204" elapsed="0.004446">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:53:48.053998" elapsed="0.004753">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:48.037008" elapsed="0.021906">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:50.083745" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:50.084966" level="INFO">GET Response : url=http://10.30.170.50: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': '1095'} 
 body={"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]} 
 </msg>
<msg time="2026-07-28T01:53:50.085165" 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-07-28T01:53:50.072936" elapsed="0.012273"/>
</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-07-28T01:53:50.085899" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:50.085355" elapsed="0.000641"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:50.090409" level="INFO">{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:50.086250" elapsed="0.004277"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:50.086044" elapsed="0.004535"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:50.085320" elapsed="0.005292"/>
</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-07-28T01:53:50.090960" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:50.090906" elapsed="0.000113"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:53:50.090885" elapsed="0.000164"/>
</if>
<status status="NOT RUN" start="2026-07-28T01:53:50.090695" elapsed="0.000389"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:50.090671" elapsed="0.000451"/>
</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-07-28T01:53:50.091302" elapsed="0.000290"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:53:50.095932" level="FAIL">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:50.092074" elapsed="0.004008">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' contains '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-07-28T01:53:50.091873" elapsed="0.004323">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' contains '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:53:50.091678" elapsed="0.004679">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:50.072177" elapsed="0.024459">'{"flow-node-inventory:table":[{"id":0,"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":1,"nanosecond":620000000}},"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":"931","duration":{"second":6,"nanosecond":43000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"22","active-flows":2,"packets-matched":"11"}}]}' 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-07-28T01:53:52.119783" level="INFO">GET Request : url=http://10.30.170.50: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=node01o35hz1sj5o3z1iy7ur1el9qny3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:52.121069" level="INFO">GET Response : url=http://10.30.170.50: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': '609'} 
 body={"flow-node-inventory:table":[{"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":"14","byte-count":"1191","duration":{"second":9,"nanosecond":81000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"14"}}]} 
 </msg>
<msg time="2026-07-28T01:53:52.121304" 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-07-28T01:53:52.111685" elapsed="0.009680"/>
</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-07-28T01:53:52.122255" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:52.121593" elapsed="0.000790"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:52.128160" level="INFO">{"flow-node-inventory:table":[{"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":"14","byte-count":"1191","duration":{"second":9,"nanosecond":81000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"14"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:52.122752" elapsed="0.005526"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:52.122441" elapsed="0.005917"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:52.121543" elapsed="0.006865"/>
</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-07-28T01:53:52.128953" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:52.128869" elapsed="0.000170"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:53:52.128836" elapsed="0.000252"/>
</if>
<status status="NOT RUN" start="2026-07-28T01:53:52.128567" elapsed="0.000570"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:52.128529" elapsed="0.000654"/>
</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-07-28T01:53:52.129478" elapsed="0.000400"/>
</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-07-28T01:53:52.130603" elapsed="0.003195"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-07-28T01:53:52.130293" elapsed="0.003546"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:52.130002" elapsed="0.003868"/>
</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-07-28T01:53:52.110425" elapsed="0.023502"/>
</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-07-28T01:53:48.027528" elapsed="4.106452"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:53:48.026056" elapsed="4.108106"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:53:52.134768" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:53:52.134687" elapsed="0.000159"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-07-28T01:53:45.844413" elapsed="6.290468"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:52.136763" 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-07-28T01:53:52.136502" elapsed="0.000318"/>
</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-07-28T01:53:52.136961" elapsed="0.000167"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-07-28T01:53:52.137261" elapsed="0.000139"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.139334" 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-07-28T01:53:52.137550" elapsed="0.001841"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.424057" 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 12.977 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:52.139549" elapsed="0.284747"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:52.424737" elapsed="0.000333"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-07-28T01:53:52.136176" elapsed="0.289045"/>
</kw>
<doc>Test suite for MD-SAL NSF</doc>
<status status="PASS" start="2026-07-28T01:53:36.185895" elapsed="16.239384"/>
</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-07-28T01:53:52.472576" 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-07-28T01:53:52.472249" elapsed="0.000386"/>
</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-07-28T01:53:52.475180" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:52.474905" elapsed="0.000345"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:52.474835" elapsed="0.000474"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.475663" 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-07-28T01:53:52.475812" 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-07-28T01:53:52.475445" elapsed="0.000396"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:52.476411" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:53:52.475978" elapsed="0.000494"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.477068" 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-07-28T01:53:52.476641" elapsed="0.000454"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:53:52.478027" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:52.478116" 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-07-28T01:53:52.477705" elapsed="0.000436"/>
</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-07-28T01:53:52.478311" elapsed="0.000443"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.479634" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:52.814936" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:39 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:52.479266" elapsed="0.335831"/>
</kw>
<msg time="2026-07-28T01:53:52.815306" 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-07-28T01:53:52.478896" elapsed="0.336495"/>
</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-07-28T01:53:52.477328" elapsed="0.338192"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:52.816052" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:53:53.962655" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:53:53.963045" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:53:53.963157" 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-07-28T01:53:52.815759" elapsed="1.147457"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:53.963705" elapsed="0.000570"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:53.965336" 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-07-28T01:53:53.964663" elapsed="0.000853"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:53.966026" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:53.965699" elapsed="0.000435"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:53.965650" elapsed="0.000536"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:53:53.966615" elapsed="0.000073"/>
</return>
<status status="PASS" start="2026-07-28T01:53:53.966309" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:53.966273" elapsed="0.000548"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:53.966904" 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-07-28T01:53:53.971919" elapsed="0.000484"/>
</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-07-28T01:53:53.972638" elapsed="0.000234"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:53.973056" elapsed="0.000146"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:53:53.967666" elapsed="0.005611"/>
</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-07-28T01:53:52.474272" elapsed="1.499134"/>
</kw>
<msg time="2026-07-28T01:53:53.973517" 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-07-28T01:53:52.473605" elapsed="1.499989"/>
</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-07-28T01:53:52.473141" elapsed="1.500567"/>
</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-07-28T01:53:53.976446" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:53.976109" elapsed="0.000448"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:53.976083" elapsed="0.000507"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:53.976976" 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-07-28T01:53:53.977126" 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-07-28T01:53:53.976762" elapsed="0.000401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:53.977947" 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.224" 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-07-28T01:53:53.977354" elapsed="0.000662"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:53.978867" 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-07-28T01:53:53.978286" elapsed="0.000626"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:53:53.980118" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:53.980230" 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-07-28T01:53:53.979708" 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-07-28T01:53:53.980484" elapsed="0.000486"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:53.982175" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:54.320885" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:52 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:53.981705" elapsed="0.339344"/>
</kw>
<msg time="2026-07-28T01:53:54.321132" 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-07-28T01:53:53.981189" elapsed="0.340023"/>
</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-07-28T01:53:53.979192" elapsed="0.342136"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:54.321856" 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-07-28T01:53:54.354267" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:53:54.354603" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:53:54.355445" 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-07-28T01:53:54.321583" elapsed="0.034301"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:54.356570" elapsed="0.000798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:54.358606" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:54.357774" elapsed="0.000950"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:54.359295" elapsed="0.000050"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:53:54.358931" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:54.358878" elapsed="0.000658"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:53:54.359988" elapsed="0.000080"/>
</return>
<status status="PASS" start="2026-07-28T01:53:54.359677" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:54.359632" elapsed="0.000568"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:53:54.360286" elapsed="0.000044"/>
</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-07-28T01:53:54.366061" elapsed="0.000983"/>
</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-07-28T01:53:54.367412" elapsed="0.000473"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:53:54.368208" elapsed="0.000311"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:53:54.361105" elapsed="0.007556"/>
</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-07-28T01:53:53.975393" elapsed="0.393533"/>
</kw>
<msg time="2026-07-28T01:53:54.369068" 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-07-28T01:53:53.974587" elapsed="0.394618"/>
</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-07-28T01:53:53.973944" elapsed="0.395484"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:52.472846" elapsed="1.896765"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:53:54.371225" 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-07-28T01:53:54.369973" elapsed="0.001315"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:54.372517" 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-07-28T01:53:54.371689" elapsed="0.000941"/>
</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-07-28T01:53:54.377254" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:53:54.377489" 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-07-28T01:53:54.376480" elapsed="0.001072"/>
</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-07-28T01:53:54.377890" elapsed="0.000849"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:53:54.380661" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:53:54.717908" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:54 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:53:54.379893" elapsed="0.338169"/>
</kw>
<msg time="2026-07-28T01:53:54.718181" 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-07-28T01:53:54.379084" elapsed="0.339186"/>
</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-07-28T01:53:54.375309" elapsed="0.343070"/>
</kw>
<msg time="2026-07-28T01:53:54.718431" 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-07-28T01:53:54.373979" elapsed="0.344514"/>
</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-07-28T01:53:54.373043" elapsed="0.345570"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:53:54.719293" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-07-28T01:53:54.802607" 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-07-28T01:53:54.718828" elapsed="0.084011"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:54.836646" level="INFO">sudo mn --controller=remote,ip=10.30.170.50 --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-07-28T01:53:54.803304" elapsed="0.033490"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:55.086996" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.50: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-07-28T01:53:54.837038" elapsed="0.250141"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-07-28T01:53:52.471719" elapsed="2.615588"/>
</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-07-28T01:53:55.124258" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0604750&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-07-28T01:53:55.123804" elapsed="0.000698"/>
</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-07-28T01:53:55.141879" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:53:55.142170" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=409, reason=Conflict 
 headers={'Set-Cookie': 'JSESSIONID=node013wejiotdnool18o6iarfs499v4.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53:55 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-07-28T01:53:55.142482" 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-07-28T01:53:55.132187" elapsed="0.010328"/>
</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-07-28T01:53:55.143125" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:55.142673" elapsed="0.000522"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:55.145821" 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-07-28T01:53:55.143373" elapsed="0.002501"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:55.143225" elapsed="0.002686"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:55.142636" elapsed="0.003300"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:55.146345" level="FAIL">Url: http://10.30.170.50: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-07-28T01:53:55.146082" elapsed="0.000772">Url: http://10.30.170.50: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-07-28T01:53:55.147154" elapsed="0.000022"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-07-28T01:53:55.147003" elapsed="0.000209"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-07-28T01:53:55.146934" elapsed="0.000307"/>
</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-07-28T01:53:55.131737" elapsed="0.015615">Url: http://10.30.170.50: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-07-28T01:53:57.183594" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:57.185165" level="INFO">GET Response : url=http://10.30.170.50: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":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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,"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:57.185948" 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-07-28T01:53:57.160510" elapsed="0.025511"/>
</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-07-28T01:53:57.187257" elapsed="0.000066"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:57.186316" elapsed="0.001084"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.194503" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.274Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:bd:b5:a3:43:52","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"265","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"12:26:ea:6a:58:84","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":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"26:66:32:1c:68:34","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:87:c5:50:ca: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":229000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.298Z"}},{"id":"openflow:1","flow-node-inventory:port-number":46512,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":4000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.395Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f6:61:4c:90:ca:fb","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"261","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ae:cc:95:0f:8c: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":0,"nanosecond":367000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"1e:a8:39:24:1a:d9","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":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"265","received":"265"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.422Z"}},{"id":"openflow:2","flow-node-inventory:port-number":46536,"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-4","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":"0","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":"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-07-28T01:53:55.230Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"c6:d6:1e:12:6a:1b","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":183000000},"bytes":{"transmitted":"265","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"3a:b5:fd:43:13:4d","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":172000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ae:a4:7b:f1:4c:f9","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":184000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2e:a2:7d:40:4f:28","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":183000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.255Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:57.187876" elapsed="0.007937"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:57.187556" elapsed="0.008300"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:57.186182" elapsed="0.009698"/>
</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-07-28T01:53:57.196079" elapsed="0.000219"/>
</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-07-28T01:53:57.196754" elapsed="0.004028"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:53:57.196577" elapsed="0.004307"/>
</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-07-28T01:53:57.201548" elapsed="0.003721"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:53:57.201157" elapsed="0.004156"/>
</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-07-28T01:53:57.205593" elapsed="0.002781"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:53:57.205450" elapsed="0.002973"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:57.196360" elapsed="0.012108"/>
</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-07-28T01:53:57.159059" elapsed="0.049517"/>
</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-07-28T01:53:55.125083" elapsed="2.083546"/>
</kw>
<doc>Get the inventory</doc>
<status status="PASS" start="2026-07-28T01:53:55.124593" elapsed="2.084175"/>
</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-07-28T01:53:57.239878" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:57.241404" level="INFO">GET Response : url=http://10.30.170.50: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":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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,"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:53:57.242163" 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-07-28T01:53:57.220521" elapsed="0.021719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.246631" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.274Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:bd:b5:a3:43:52","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"265","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"12:26:ea:6a:58:84","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":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"26:66:32:1c:68:34","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:87:c5:50:ca: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":229000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.298Z"}},{"id":"openflow:1","flow-node-inventory:port-number":46512,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":4000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.395Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f6:61:4c:90:ca:fb","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"261","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ae:cc:95:0f:8c: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":0,"nanosecond":367000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"1e:a8:39:24:1a:d9","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":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"265","received":"265"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.422Z"}},{"id":"openflow:2","flow-node-inventory:port-number":46536,"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-4","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":"0","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":"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-07-28T01:53:55.230Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"c6:d6:1e:12:6a:1b","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":183000000},"bytes":{"transmitted":"265","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"3a:b5:fd:43:13:4d","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":172000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ae:a4:7b:f1:4c:f9","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":184000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2e:a2:7d:40:4f:28","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":183000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.255Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:57.242706" elapsed="0.005618"/>
</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-07-28T01:53:57.248594" elapsed="0.000267"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.252609" 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-07-28T01:53:57.249120" elapsed="0.004015"/>
</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-07-28T01:53:57.219999" elapsed="0.033208"/>
</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-07-28T01:53:57.209759" elapsed="0.043504"/>
</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-07-28T01:53:57.209154" elapsed="0.044282"/>
</test>
<test id="s1-s2-s1-t3" name="Get node 1 inventory" line="49">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.254767" 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-07-28T01:53:57.254220" elapsed="0.000577"/>
</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-07-28T01:53:57.276302" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:57.277135" level="INFO">GET Response : url=http://10.30.170.50: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":46512,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":4000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:57.277445" 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-07-28T01:53:57.262508" elapsed="0.015001"/>
</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-07-28T01:53:57.278252" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:57.277699" elapsed="0.000637"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.282440" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":46512,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":4000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.395Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"f6:61:4c:90:ca:fb","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":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"261","received":"265"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ae:cc:95:0f:8c: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":0,"nanosecond":367000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"1e:a8:39:24:1a:d9","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":"3","received":"3"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":371000000},"bytes":{"transmitted":"265","received":"265"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.422Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:57.278640" elapsed="0.004413"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:57.278426" elapsed="0.004730"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:57.277668" elapsed="0.005521"/>
</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-07-28T01:53:57.283370" elapsed="0.000280"/>
</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-07-28T01:53:57.284224" elapsed="0.003911"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.283999" elapsed="0.004198"/>
</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-07-28T01:53:57.288509" elapsed="0.003783"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.288317" elapsed="0.004021"/>
</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-07-28T01:53:57.292603" elapsed="0.002685"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.292424" elapsed="0.002908"/>
</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-07-28T01:53:57.295604" elapsed="0.002733"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.295478" elapsed="0.002902"/>
</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-07-28T01:53:57.298652" elapsed="0.003995"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:57.298490" elapsed="0.004268"/>
</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-07-28T01:53:57.303110" elapsed="0.003859"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:57.302879" elapsed="0.004204"/>
</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-07-28T01:53:57.307394" elapsed="0.003597"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:57.307206" elapsed="0.003838"/>
</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-07-28T01:53:57.311270" elapsed="0.002747"/>
</kw>
<var name="${i}">openflow:1:1</var>
<status status="PASS" start="2026-07-28T01:53:57.311145" elapsed="0.002914"/>
</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-07-28T01:53:57.314320" elapsed="0.002700"/>
</kw>
<var name="${i}">openflow:1:2</var>
<status status="PASS" start="2026-07-28T01:53:57.314185" elapsed="0.002879"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:57.283787" elapsed="0.033308"/>
</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-07-28T01:53:57.261932" elapsed="0.055221"/>
</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-07-28T01:53:57.254968" elapsed="0.062238"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:57.253710" elapsed="0.063666"/>
</test>
<test id="s1-s2-s1-t4" name="Get node 2 inventory" line="60">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.318671" 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-07-28T01:53:57.318152" elapsed="0.000562"/>
</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-07-28T01:53:57.335074" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:57.335617" level="INFO">GET Response : url=http://10.30.170.50: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":46536,"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-4","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":"0","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-07-28T01:53:57.335885" 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-07-28T01:53:57.326592" elapsed="0.009327"/>
</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-07-28T01:53:57.336588" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:57.336048" elapsed="0.000629"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.341084" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:2","flow-node-inventory:port-number":46536,"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-4","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":"0","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":"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-07-28T01:53:55.230Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"c6:d6:1e:12:6a:1b","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":183000000},"bytes":{"transmitted":"265","received":"176"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"3a:b5:fd:43:13:4d","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":172000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ae:a4:7b:f1:4c:f9","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":184000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2e:a2:7d:40:4f:28","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":183000000},"bytes":{"transmitted":"175","received":"90"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.255Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:57.336970" elapsed="0.004930"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:57.336717" elapsed="0.005245"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:57.336018" elapsed="0.005984"/>
</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-07-28T01:53:57.342205" 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-07-28T01:53:57.343010" elapsed="0.003614"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.342794" elapsed="0.003897"/>
</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-07-28T01:53:57.347016" elapsed="0.003576"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.346821" elapsed="0.003815"/>
</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-07-28T01:53:57.350855" elapsed="0.002700"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.350721" elapsed="0.002879"/>
</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-07-28T01:53:57.353838" elapsed="0.002885"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.353702" elapsed="0.003065"/>
</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-07-28T01:53:57.357017" elapsed="0.002728"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:57.356894" elapsed="0.002896"/>
</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-07-28T01:53:57.360010" elapsed="0.002714"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:57.359874" elapsed="0.002893"/>
</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-07-28T01:53:57.363020" elapsed="0.002687"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:57.362853" elapsed="0.002897"/>
</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-07-28T01:53:57.366008" elapsed="0.002714"/>
</kw>
<var name="${i}">openflow:2:1</var>
<status status="PASS" start="2026-07-28T01:53:57.365884" elapsed="0.002883"/>
</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-07-28T01:53:57.368986" elapsed="0.002763"/>
</kw>
<var name="${i}">openflow:2:2</var>
<status status="PASS" start="2026-07-28T01:53:57.368851" elapsed="0.002940"/>
</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-07-28T01:53:57.372051" elapsed="0.002731"/>
</kw>
<var name="${i}">openflow:2:3</var>
<status status="PASS" start="2026-07-28T01:53:57.371918" elapsed="0.002945"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:57.342590" elapsed="0.032307"/>
</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-07-28T01:53:57.325961" elapsed="0.049001"/>
</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-07-28T01:53:57.318981" elapsed="0.056035"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:57.317671" elapsed="0.057488"/>
</test>
<test id="s1-s2-s1-t5" name="Get node 3 inventory" line="71">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.376409" 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-07-28T01:53:57.375907" elapsed="0.000539"/>
</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-07-28T01:53:57.397622" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:57.398385" level="INFO">GET Response : url=http://10.30.170.50: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":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:57.398840" 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-07-28T01:53:57.384485" elapsed="0.014398"/>
</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-07-28T01:53:57.399566" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:57.399011" elapsed="0.000642"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.403648" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:3","flow-node-inventory:port-number":46528,"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":2000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"3","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-07-28T01:53:55.274Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:bd:b5:a3:43:52","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"265","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"12:26:ea:6a:58:84","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":"4","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"351","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"26:66:32:1c:68:34","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":"3","received":"2"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":0,"nanosecond":240000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:87:c5:50:ca: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":229000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:53:55.298Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:53:57.399928" elapsed="0.004416"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:57.399689" elapsed="0.004712"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:57.398980" elapsed="0.005454"/>
</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-07-28T01:53:57.404637" elapsed="0.000243"/>
</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-07-28T01:53:57.405316" elapsed="0.003516"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-flow-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.405150" elapsed="0.003748"/>
</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-07-28T01:53:57.409209" elapsed="0.003407"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-table-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.409037" elapsed="0.003638"/>
</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-07-28T01:53:57.412960" elapsed="0.002847"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-port-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.412793" elapsed="0.003056"/>
</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-07-28T01:53:57.416052" elapsed="0.002421"/>
</kw>
<var name="${i}">"flow-node-inventory:flow-feature-capability-queue-stats"</var>
<status status="PASS" start="2026-07-28T01:53:57.415931" elapsed="0.002586"/>
</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-07-28T01:53:57.418722" elapsed="0.002528"/>
</kw>
<var name="${i}">"flow-node-inventory:manufacturer":"Nicira, Inc."</var>
<status status="PASS" start="2026-07-28T01:53:57.418602" elapsed="0.002690"/>
</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-07-28T01:53:57.421511" elapsed="0.002414"/>
</kw>
<var name="${i}">"flow-node-inventory:ip-address":"10.30.171.224"</var>
<status status="PASS" start="2026-07-28T01:53:57.421374" 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-07-28T01:53:57.424176" elapsed="0.002442"/>
</kw>
<var name="${i}">"flow-node-inventory:hardware":"Open vSwitch"</var>
<status status="PASS" start="2026-07-28T01:53:57.424056" elapsed="0.002604"/>
</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-07-28T01:53:57.426865" elapsed="0.002390"/>
</kw>
<var name="${i}">openflow:3:1</var>
<status status="PASS" start="2026-07-28T01:53:57.426744" elapsed="0.002552"/>
</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-07-28T01:53:57.429514" elapsed="0.002415"/>
</kw>
<var name="${i}">openflow:3:2</var>
<status status="PASS" start="2026-07-28T01:53:57.429379" elapsed="0.002591"/>
</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-07-28T01:53:57.432175" elapsed="0.002430"/>
</kw>
<var name="${i}">openflow:3:3</var>
<status status="PASS" start="2026-07-28T01:53:57.432055" elapsed="0.002592"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:57.404965" elapsed="0.029713"/>
</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-07-28T01:53:57.383874" elapsed="0.050863"/>
</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-07-28T01:53:57.376690" elapsed="0.058108"/>
</kw>
<doc>Get the inventory for a node</doc>
<status status="PASS" start="2026-07-28T01:53:57.375408" elapsed="0.059511"/>
</test>
<test id="s1-s2-s1-t6" name="Link Down" line="82">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:57.542058" 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-07-28T01:53:57.435439" elapsed="0.106688"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:57.571839" 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-07-28T01:53:57.542284" elapsed="0.029619"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:57.572366" 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-07-28T01:53:57.572054" elapsed="0.000340"/>
</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-07-28T01:53:58.070944" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.071489" level="INFO">GET Response : url=http://10.30.170.50: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":"f6:61:4c:90:ca:fb","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-07-28T01:53:58.071932" 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-07-28T01:53:57.579740" elapsed="0.492280"/>
</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-07-28T01:53:58.073135" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:58.072268" elapsed="0.001002"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.078165" 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":"f6:61:4c:90:ca:fb","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-07-28T01:53:58.073677" elapsed="0.004564"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:58.073329" elapsed="0.004961"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:58.072209" elapsed="0.006113"/>
</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-07-28T01:53:58.078538" elapsed="0.000256"/>
</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-07-28T01:53:58.079258" elapsed="0.003213"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-07-28T01:53:58.079072" elapsed="0.003464"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:58.078879" elapsed="0.003703"/>
</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-07-28T01:53:57.579159" elapsed="0.503509"/>
</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-07-28T01:53:57.572576" elapsed="0.510166"/>
</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-07-28T01:53:58.100559" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.100861" level="INFO">GET Response : url=http://10.30.170.50: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":"c6:d6:1e:12:6a:1b","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-07-28T01:53:58.101000" 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-07-28T01:53:58.091745" elapsed="0.009309"/>
</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-07-28T01:53:58.101644" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:58.101188" elapsed="0.000541"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.105391" 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":"c6:d6:1e:12:6a:1b","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-07-28T01:53:58.101956" elapsed="0.003530"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:58.101780" elapsed="0.003757"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:58.101159" elapsed="0.004413"/>
</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-07-28T01:53:58.105743" elapsed="0.000252"/>
</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-07-28T01:53:58.106432" elapsed="0.003180"/>
</kw>
<var name="${i}">"link-down":true</var>
<status status="PASS" start="2026-07-28T01:53:58.106262" elapsed="0.003407"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:58.106070" elapsed="0.003642"/>
</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-07-28T01:53:58.091159" elapsed="0.018629"/>
</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-07-28T01:53:58.083001" elapsed="0.026857"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-07-28T01:53:57.435100" elapsed="0.674944"/>
</test>
<test id="s1-s2-s1-t7" name="Link Up" line="100">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:53:58.113081" 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-07-28T01:53:58.111038" elapsed="0.002127"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:53:58.120183" 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-07-28T01:53:58.113369" elapsed="0.006897"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.120971" 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-07-28T01:53:58.120498" elapsed="0.000500"/>
</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-07-28T01:53:58.135168" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.135379" level="INFO">GET Response : url=http://10.30.170.50: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":"f6:61:4c:90:ca:fb","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-07-28T01:53:58.135501" 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-07-28T01:53:58.128243" elapsed="0.007286"/>
</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-07-28T01:53:58.135936" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:58.135630" elapsed="0.000364"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.138396" 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":"f6:61:4c:90:ca:fb","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-07-28T01:53:58.136153" elapsed="0.002296"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:58.136018" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:58.135608" elapsed="0.002929"/>
</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-07-28T01:53:58.138663" 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-07-28T01:53:58.139191" elapsed="0.002934"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-07-28T01:53:58.139056" elapsed="0.003126"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:58.138883" elapsed="0.003341"/>
</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-07-28T01:53:58.127690" elapsed="0.014610"/>
</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-07-28T01:53:58.121163" elapsed="0.021205"/>
</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-07-28T01:53:58.157164" level="INFO">GET Request : url=http://10.30.170.50: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=node013wejiotdnool18o6iarfs499v4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.157468" level="INFO">GET Response : url=http://10.30.170.50: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":"c6:d6:1e:12:6a:1b","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-07-28T01:53:58.157570" 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-07-28T01:53:58.151533" elapsed="0.006062"/>
</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-07-28T01:53:58.157975" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:58.157675" elapsed="0.000390"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.160391" 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":"c6:d6:1e:12:6a:1b","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-07-28T01:53:58.158224" elapsed="0.002218"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:58.158094" elapsed="0.002399"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:58.157655" elapsed="0.002882"/>
</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-07-28T01:53:58.160660" elapsed="0.000179"/>
</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-07-28T01:53:58.161150" elapsed="0.002405"/>
</kw>
<var name="${i}">"link-down":false</var>
<status status="PASS" start="2026-07-28T01:53:58.161021" elapsed="0.002576"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:58.160893" elapsed="0.002734"/>
</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-07-28T01:53:58.151011" elapsed="0.012671"/>
</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-07-28T01:53:58.142643" elapsed="0.021146"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-07-28T01:53:58.110519" elapsed="0.053390"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:53:58.164652" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:53:58.164569" elapsed="0.000151"/>
</kw>
<doc>Test suite for RESTCONF inventory</doc>
<status status="PASS" start="2026-07-28T01:53:55.087479" elapsed="3.077274"/>
</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-07-28T01:53:58.197811" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/json'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b06827d0&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-07-28T01:53:58.197416" elapsed="0.000564"/>
</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-07-28T01:53:58.216432" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:53:58.217520" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0kuob4mes87msz69oyuc877725.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:53:58 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '3136'} 
 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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.217878" 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-07-28T01:53:58.205593" elapsed="0.012344"/>
</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-07-28T01:53:58.218953" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:53:58.218159" elapsed="0.000890"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.222601" 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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.219269" elapsed="0.003431"/>
</kw>
<status status="PASS" start="2026-07-28T01:53:58.219086" elapsed="0.003663"/>
</branch>
<status status="PASS" start="2026-07-28T01:53:58.218093" elapsed="0.004687"/>
</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-07-28T01:53:58.222961" elapsed="0.000248"/>
</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-07-28T01:53:58.223681" elapsed="0.003627"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:53:58.223510" elapsed="0.003855"/>
</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-07-28T01:53:58.227683" elapsed="0.002796"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:53:58.227510" elapsed="0.003020"/>
</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-07-28T01:53:58.230749" elapsed="0.002397"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:53:58.230628" elapsed="0.002558"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:53:58.223288" elapsed="0.009929"/>
</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-07-28T01:53:58.205181" elapsed="0.028093"/>
</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-07-28T01:53:58.198772" elapsed="0.034554"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:58.241297" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.241933" level="INFO">GET Response : url=http://10.30.170.50: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': '3136'} 
 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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.242141" 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-07-28T01:53:58.233492" elapsed="0.008686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.245699" 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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.242414" elapsed="0.003394"/>
</kw>
<doc>Get RESTCONF Topology and validate the result.</doc>
<status status="PASS" start="2026-07-28T01:53:58.198048" elapsed="0.047914"/>
</test>
<test id="s1-s2-s2-t2" name="List all the links" line="31">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.247645" 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-07-28T01:53:58.247089" elapsed="0.000603"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.248365" 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-07-28T01:53:58.247903" elapsed="0.000531"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.249354" 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-07-28T01:53:58.248751" elapsed="0.000653"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.250132" 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-07-28T01:53:58.249663" elapsed="0.000540"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.250876" 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-07-28T01:53:58.250414" elapsed="0.000500"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.251586" 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-07-28T01:53:58.251131" elapsed="0.000501"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.252431" 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-07-28T01:53:58.251846" elapsed="0.000652"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.253180" 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-07-28T01:53:58.252709" elapsed="0.000530"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.253910" 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-07-28T01:53:58.253445" elapsed="0.000501"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.254646" 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-07-28T01:53:58.254160" elapsed="0.000562"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.255531" 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-07-28T01:53:58.254939" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.256226" 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-07-28T01:53:58.255779" elapsed="0.000506"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.257007" 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-07-28T01:53:58.256552" elapsed="0.000504"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.257870" 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-07-28T01:53:58.257261" elapsed="0.000644"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.258718" 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-07-28T01:53:58.258127" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.259432" 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-07-28T01:53:58.258982" elapsed="0.000528"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.260269" 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-07-28T01:53:58.259716" elapsed="0.000591"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:53:58.267560" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:53:58.268004" level="INFO">GET Response : url=http://10.30.170.50: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': '2970'} 
 body={"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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.268141" 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-07-28T01:53:58.261744" elapsed="0.006423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.271504" level="INFO">{"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: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']"}]},{"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:3","source":{"source-node":"openflow:2","source-tp":"openflow:2:3"},"destination":{"dest-tp":"openflow:1:1","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-07-28T01:53:58.268331" elapsed="0.003336"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.276100" level="INFO">${json_data} = {'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']",...</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-07-28T01:53:58.275339" elapsed="0.000833"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:53:58.276249" elapsed="0.000055"/>
</return>
<msg time="2026-07-28T01:53:58.276607" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:53:58.271947" elapsed="0.004699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.277276" level="INFO">{'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: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']"}]}, {'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:3', 'source': {'source-node': 'openflow:2', 'source-tp': 'openflow:2:3'}, 'destination': {'dest-tp': 'openflow:1:1', '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-07-28T01:53:58.276847" elapsed="0.000523"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:58.277926" level="INFO">${content} = [{'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...</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-07-28T01:53:58.277608" elapsed="0.000357"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:53:58.278587" level="INFO">${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'...</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-07-28T01:53:58.278231" elapsed="0.000395"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:53:58.279054" 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:1:1', '...</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-07-28T01:53:58.278832" elapsed="0.000249"/>
</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-07-28T01:53:58.279406" elapsed="0.000357"/>
</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-07-28T01:53:58.279289" elapsed="0.000514"/>
</iter>
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:53:58.280433" level="FAIL">'[{'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: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'}}]' does not contain '{'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>${links}</arg>
<arg>${expected_link}</arg>
<doc>Fails if ``container`` does not contain ``item`` one or more times.</doc>
<status status="FAIL" start="2026-07-28T01:53:58.280030" elapsed="0.000522">'[{'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: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'}}]' does not contain '{'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'}}'</status>
</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="FAIL" start="2026-07-28T01:53:58.279905" elapsed="0.000761">'[{'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: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'}}]' does not contain '{'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'}}'</status>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="FAIL" start="2026-07-28T01:53:58.279135" elapsed="0.001597">'[{'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: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'}}]' does not contain '{'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'}}'</status>
</for>
<arg>${links}</arg>
<status status="FAIL" start="2026-07-28T01:53:58.261421" elapsed="0.019412">'[{'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: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'}}]' does not contain '{'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'}}'</status>
</kw>
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:00.294026" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:00.294792" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:54:00.295016" 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-07-28T01:54:00.283030" elapsed="0.012025"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.299110" level="INFO">{"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: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']"}]},{"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: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-07-28T01:54:00.295341" elapsed="0.003957"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.304464" level="INFO">${json_data} = {'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']",...</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-07-28T01:54:00.303873" elapsed="0.000623"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:54:00.304572" elapsed="0.000048"/>
</return>
<msg time="2026-07-28T01:54:00.304803" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:54:00.299656" elapsed="0.005187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.305305" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:54:00.304997" elapsed="0.000378"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.305798" level="INFO">${content} = [{'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...</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-07-28T01:54:00.305539" elapsed="0.000295"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:54:00.306268" level="INFO">${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'...</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-07-28T01:54:00.306031" elapsed="0.000265"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.306676" 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-07-28T01:54:00.306440" elapsed="0.000267"/>
</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-07-28T01:54:00.307061" elapsed="0.000367"/>
</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-07-28T01:54:00.306931" elapsed="0.000556"/>
</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-07-28T01:54:00.307713" elapsed="0.000647"/>
</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-07-28T01:54:00.307584" elapsed="0.000818"/>
</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-07-28T01:54:00.308631" elapsed="0.000333"/>
</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-07-28T01:54:00.308512" elapsed="0.000492"/>
</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-07-28T01:54:00.309274" elapsed="0.000347"/>
</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-07-28T01:54:00.309154" elapsed="0.000507"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:54:00.306771" elapsed="0.002921"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:54:00.282039" elapsed="0.027710"/>
</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-07-28T01:53:58.260589" elapsed="2.049205"/>
</kw>
<doc>List all the links in the topology.</doc>
<status status="PASS" start="2026-07-28T01:53:58.246529" elapsed="2.063427"/>
</test>
<test id="s1-s2-s2-t3" name="Link Down" line="52">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.313187" 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-07-28T01:54:00.310759" elapsed="0.002489"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.316255" 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-07-28T01:54:00.313392" elapsed="0.002923"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.316839" 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-07-28T01:54:00.316482" elapsed="0.000385"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:00.326939" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:00.327435" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:54:00.327593" 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-07-28T01:54:00.317937" elapsed="0.009682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.332135" level="INFO">{"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: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']"}]},{"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: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-07-28T01:54:00.327782" elapsed="0.004637"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.339573" level="INFO">${json_data} = {'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']",...</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-07-28T01:54:00.338939" elapsed="0.000664"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:54:00.339658" elapsed="0.000056"/>
</return>
<msg time="2026-07-28T01:54:00.339890" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:54:00.332959" elapsed="0.007005"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.340673" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:54:00.340219" elapsed="0.000574"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.341312" level="INFO">${content} = [{'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...</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-07-28T01:54:00.340994" elapsed="0.000348"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:54:00.341759" level="INFO">${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'...</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-07-28T01:54:00.341505" elapsed="0.000282"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.342144" 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-07-28T01:54:00.341946" elapsed="0.000225"/>
</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-07-28T01:54:00.342543" elapsed="0.000343"/>
</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-07-28T01:54:00.342400" elapsed="0.000526"/>
</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-07-28T01:54:00.343142" elapsed="0.000335"/>
</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-07-28T01:54:00.343025" elapsed="0.000492"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:54:00.342231" elapsed="0.001317"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:54:00.317596" elapsed="0.026012"/>
</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-07-28T01:54:00.317039" elapsed="0.026616"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.346104" 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-07-28T01:54:00.343809" elapsed="0.002393"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.371955" level="INFO">_uuid               : 8dd4f127-a64a-4481-92f7-c25682d9d4d0
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         : 3
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "f6:61:4c:90:ca:fb"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=1197, 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=14, tx_bytes=1287, tx_dropped=0, tx_errors=0, tx_packets=15}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-07-28T01:54:00.372080" level="INFO">${output} = _uuid               : 8dd4f127-a64a-4481-92f7-c25682d9d4d0
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-07-28T01:54:00.346365" elapsed="0.025743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.372623" level="INFO">_uuid               : 8dd4f127-a64a-4481-92f7-c25682d9d4d0
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         : 3
link_speed          : 10000000000
link_state          : down
lldp                : {}
mac                 : []
mac_in_use          : "f6:61:4c:90:ca:fb"
mtu                 : 1500
mtu_request         : []
name                : s1-eth1
ofport              : 1
ofport_request      : 1
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=1197, 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=14, tx_bytes=1287, tx_dropped=0, tx_errors=0, tx_packets=15}
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-07-28T01:54:00.372266" elapsed="0.000418"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.374584" 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-07-28T01:54:00.372821" elapsed="0.001821"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.394980" level="INFO">_uuid               : cc00e3da-c75f-4f40-9573-d3f704864501
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          : "1e:a8:39:24:1a:d9"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=686, 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=8, tx_bytes=686, tx_dropped=0, tx_errors=0, tx_packets=8}
status              : {driver_name=veth, driver_version="1.0", firmware_version=""}
type                : ""
mininet&gt;</msg>
<msg time="2026-07-28T01:54:00.395100" level="INFO">${output} = _uuid               : cc00e3da-c75f-4f40-9573-d3f704864501
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-07-28T01:54:00.374797" elapsed="0.020331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.395579" level="INFO">_uuid               : cc00e3da-c75f-4f40-9573-d3f704864501
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          : "1e:a8:39:24:1a:d9"
mtu                 : 1500
mtu_request         : []
name                : s1-eth2
ofport              : 2
ofport_request      : 2
options             : {}
other_config        : {}
statistics          : {collisions=0, rx_bytes=686, 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=8, tx_bytes=686, tx_dropped=0, tx_errors=0, tx_packets=8}
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-07-28T01:54:00.395289" elapsed="0.000348"/>
</kw>
<doc>Take link s1-s2 down</doc>
<status status="PASS" start="2026-07-28T01:54:00.310324" elapsed="0.085439"/>
</test>
<test id="s1-s2-s2-t4" name="Link Up" line="69">
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.398134" 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-07-28T01:54:00.396510" elapsed="0.001684"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:00.405822" 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-07-28T01:54:00.398336" elapsed="0.007550"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.406443" 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-07-28T01:54:00.406029" elapsed="0.000497"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Verify Links">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:00.419095" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:00.419597" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:54:00.419737" 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-07-28T01:54:00.407923" elapsed="0.011840"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.422292" level="INFO">{"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: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']"}]},{"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: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-07-28T01:54:00.419918" elapsed="0.002439"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.425385" level="INFO">${json_data} = {'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']",...</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-07-28T01:54:00.424896" elapsed="0.000518"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:54:00.425521" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:00.425735" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:54:00.422577" elapsed="0.003185"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.426199" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:54:00.425914" elapsed="0.000349"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.426638" level="INFO">${content} = [{'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...</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-07-28T01:54:00.426399" elapsed="0.000266"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:54:00.427030" level="INFO">${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'...</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-07-28T01:54:00.426805" elapsed="0.000252"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:00.427381" 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-07-28T01:54:00.427195" elapsed="0.000213"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:54:00.428177" 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-07-28T01:54:00.427761" elapsed="0.000514">'[{'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-07-28T01:54:00.427640" elapsed="0.000710">'[{'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-07-28T01:54:00.427485" elapsed="0.000931">'[{'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-07-28T01:54:00.407597" elapsed="0.020970">'[{'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-07-28T01:54:02.440740" level="INFO">GET Request : url=http://10.30.170.50: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=node0kuob4mes87msz69oyuc877725.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.441404" level="INFO">GET Response : url=http://10.30.170.50: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","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: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']"}]},{"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: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-07-28T01:54:02.441610" 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-07-28T01:54:02.430266" elapsed="0.011382"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:02.445211" level="INFO">{"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: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']"}]},{"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: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-07-28T01:54:02.441889" elapsed="0.003479"/>
</kw>
<kw name="Json Parse From String" owner="Utils">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:54:02.449261" level="INFO">${json_data} = {'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']",...</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-07-28T01:54:02.448757" elapsed="0.000534"/>
</kw>
<return>
<value>${json_data}</value>
<status status="PASS" start="2026-07-28T01:54:02.449347" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:02.449580" level="INFO">${result} = {'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']",...</msg>
<var>${result}</var>
<arg>${resp.text}</arg>
<doc>Parse given plain string into json (dictionary)</doc>
<status status="PASS" start="2026-07-28T01:54:02.445671" elapsed="0.003937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:02.450045" level="INFO">{'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: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']"}]}, {'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: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-07-28T01:54:02.449754" elapsed="0.000361"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:02.450494" level="INFO">${content} = [{'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...</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-07-28T01:54:02.450255" elapsed="0.000270"/>
</kw>
<kw name="Get From List" owner="Collections">
<msg time="2026-07-28T01:54:02.450896" level="INFO">${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'...</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-07-28T01:54:02.450667" elapsed="0.000257"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:54:02.451303" 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-07-28T01:54:02.451068" elapsed="0.000263"/>
</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-07-28T01:54:02.451698" elapsed="0.000417"/>
</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-07-28T01:54:02.451564" elapsed="0.000590"/>
</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-07-28T01:54:02.452403" elapsed="0.000381"/>
</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-07-28T01:54:02.452285" elapsed="0.000539"/>
</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-07-28T01:54:02.453032" elapsed="0.000641"/>
</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-07-28T01:54:02.452916" elapsed="0.000799"/>
</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-07-28T01:54:02.453999" elapsed="0.000356"/>
</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-07-28T01:54:02.453878" elapsed="0.000517"/>
</iter>
<var>${expected_link}</var>
<value>@{expected_links}</value>
<status status="PASS" start="2026-07-28T01:54:02.451392" elapsed="0.003034"/>
</for>
<arg>${links}</arg>
<status status="PASS" start="2026-07-28T01:54:02.429365" elapsed="0.025134"/>
</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-07-28T01:54:00.406696" elapsed="2.047849"/>
</kw>
<doc>Take link s1-s2 up</doc>
<status status="PASS" start="2026-07-28T01:54:00.396090" elapsed="2.058578"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:54:02.455295" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:54:02.455215" elapsed="0.000195"/>
</kw>
<doc>Test suite for RESTCONF Topology</doc>
<status status="PASS" start="2026-07-28T01:53:58.166076" elapsed="4.289368"/>
</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-07-28T01:54:02.489387" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0615210&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-07-28T01:54:02.489049" elapsed="0.000569"/>
</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-07-28T01:54:02.518386" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:54:02.519905" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node014qlw7oyyv43mnjc31o7q9j7q6.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:54:02 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":46528,"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":"16","byte-count":"1318","duration":{"second":6,"nanosecond":34000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"19","active-flows":1,"packets-matched":"16"}},{"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-07-28T01:54:02.520512" 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-07-28T01:54:02.497254" elapsed="0.023344"/>
</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-07-28T01:54:02.521561" elapsed="0.000064"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:02.520802" elapsed="0.000898"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:02.526269" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":46528,"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":"16","byte-count":"1318","duration":{"second":6,"nanosecond":34000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"19","active-flows":1,"packets-matched":"16"}},{"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-07-28T01:54:01.307Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"96:bd:b5:a3:43:52","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":"9","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":273000000},"bytes":{"transmitted":"756","received":"756"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"12:26:ea:6a:58:84","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":"9","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":272000000},"bytes":{"transmitted":"756","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"26:66:32:1c:68:34","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":"9","received":"7"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":272000000},"bytes":{"transmitted":"756","received":"586"},"receive-crc-error":"0"}},{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"62:87:c5:50:ca: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":6,"nanosecond":261000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:54:01.329Z"}},{"id":"openflow:1","flow-node-inventory:port-number":46512,"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":"21","byte-count":"1774","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"24","active-flows":1,"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":"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-07-28T01:54:01.426Z"},"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":"f6:61:4c:90:ca:fb","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},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"19","received":"18"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":398000000},"bytes":{"transmitted":"1638","received":"1548"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"ae:cc:95:0f:8c: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":6,"nanosecond":394000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"1e:a8:39:24:1a:d9","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":"9","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":398000000},"bytes":{"transmitted":"756","received":"756"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:54:01.448Z"}},{"id":"openflow:2","flow-node-inventory:port-number":46536,"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-4","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":"25","byte-count":"2138","duration":{"second":6,"nanosecond":32000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"25"}},{"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-07-28T01:54:01.260Z"},"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":"c6:d6:1e:12:6a:1b","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},"opendaylight-port-statistics:flow-capable-node-connector-statistics":{"receive-drops":"0","transmit-drops":"0","receive-frame-error":"0","collision-count":"0","packets":{"transmitted":"18","received":"18"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":215000000},"bytes":{"transmitted":"1548","received":"1548"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"3a:b5:fd:43:13:4d","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":6,"nanosecond":204000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ae:a4:7b:f1:4c:f9","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":"9","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":216000000},"bytes":{"transmitted":"756","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2e:a2:7d:40:4f:28","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":"9","received":"6"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":6,"nanosecond":215000000},"bytes":{"transmitted":"756","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:54:01.285Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:02.522075" elapsed="0.005761"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:02.521759" elapsed="0.006134"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:02.520751" elapsed="0.007176"/>
</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-07-28T01:54:02.528108" elapsed="0.000256"/>
</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-07-28T01:54:02.528863" elapsed="0.003474"/>
</kw>
<var name="${i}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:54:02.528669" elapsed="0.003710"/>
</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-07-28T01:54:02.532653" elapsed="0.002589"/>
</kw>
<var name="${i}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:54:02.532483" elapsed="0.002801"/>
</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-07-28T01:54:02.535537" elapsed="0.002900"/>
</kw>
<var name="${i}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:54:02.535367" elapsed="0.003135"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:54:02.528448" elapsed="0.010086"/>
</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-07-28T01:54:02.496806" elapsed="0.041794"/>
</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-07-28T01:54:02.490156" elapsed="0.048508"/>
</kw>
<doc>Get the stats for all nodes</doc>
<status status="PASS" start="2026-07-28T01:54:02.489690" elapsed="0.049098"/>
</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-07-28T01:54:02.553401" level="INFO">GET Request : url=http://10.30.170.50: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=node014qlw7oyyv43mnjc31o7q9j7q6.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.554092" level="INFO">GET Response : url=http://10.30.170.50: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":46512,"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":"21","byte-count":"1774","duration":{"second":6,"nanosecond":28000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"24","active-flows":1,"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,"op... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:02.554412" 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-07-28T01:54:02.544339" elapsed="0.010133"/>
</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-07-28T01:54:02.554697" elapsed="0.005471"/>
</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-07-28T01:54:02.560396" elapsed="0.003448"/>
</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-07-28T01:54:02.543895" elapsed="0.020044"/>
</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-07-28T01:54:02.539521" elapsed="0.024496"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:54:02.539070" elapsed="0.025125"/>
</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-07-28T01:54:02.576649" level="INFO">GET Request : url=http://10.30.170.50: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=node014qlw7oyyv43mnjc31o7q9j7q6.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.577306" level="INFO">GET Response : url=http://10.30.170.50: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":46536,"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-4","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":"25","byte-count":"2138","duration":{"second":6,"nanosecond":32000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"25","active-flows":1,"packets-matched":"25"}},{"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-07-28T01:54:02.577641" 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-07-28T01:54:02.568374" elapsed="0.009305"/>
</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-07-28T01:54:02.577907" elapsed="0.003438"/>
</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-07-28T01:54:02.581587" elapsed="0.003565"/>
</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-07-28T01:54:02.568063" elapsed="0.017212"/>
</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-07-28T01:54:02.564885" elapsed="0.020481"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:54:02.564450" elapsed="0.021139"/>
</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-07-28T01:54:02.603824" level="INFO">GET Request : url=http://10.30.170.50: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=node014qlw7oyyv43mnjc31o7q9j7q6.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.605083" level="INFO">GET Response : url=http://10.30.170.50: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":46528,"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":"16","byte-count":"1318","duration":{"second":6,"nanosecond":34000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"19","active-flows":1,"packets-matched":"16"}},{"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-07-28T01:54:02.605761" 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-07-28T01:54:02.592401" elapsed="0.013428"/>
</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-07-28T01:54:02.606232" elapsed="0.005941"/>
</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-07-28T01:54:02.612337" elapsed="0.002404"/>
</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-07-28T01:54:02.591919" elapsed="0.022892"/>
</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-07-28T01:54:02.586793" elapsed="0.028069"/>
</kw>
<doc>Get the stats for a node</doc>
<status status="PASS" start="2026-07-28T01:54:02.586022" elapsed="0.028984"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:54:02.615843" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:54:02.615731" elapsed="0.000213"/>
</kw>
<doc>Test suite for RESTCONF statistics</doc>
<status status="PASS" start="2026-07-28T01:54:02.456296" elapsed="0.159694"/>
</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-07-28T01:54:02.655302" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b050ce10&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-07-28T01:54:02.654874" elapsed="0.000700"/>
</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-07-28T01:54:02.673753" level="INFO">PUT Request : url=http://10.30.170.50: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-07-28T01:54:02.673890" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2/flow=139 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node03t2wls1jx84rn1lgqxf31i517.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:54:02 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.674127" 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-07-28T01:54:02.656184" elapsed="0.018000"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-07-28T01:54:02.655660" elapsed="0.018896"/>
</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-07-28T01:54:02.685604" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.685928" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:02.686068" 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-07-28T01:54:02.676342" elapsed="0.009763"/>
</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-07-28T01:54:02.686370" elapsed="0.003173"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:02.675150" elapsed="0.014556"/>
</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-07-28T01:54:02.691106" 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-07-28T01:54:02.690707" elapsed="0.000437"/>
</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-07-28T01:54:02.702783" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:02.702994" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:02.703103" 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-07-28T01:54:02.696615" elapsed="0.006515"/>
</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-07-28T01:54:02.703607" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:02.703222" elapsed="0.000446"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:02.706111" 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-07-28T01:54:02.703821" elapsed="0.002340"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:02.703697" elapsed="0.002500"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:02.703198" elapsed="0.003023"/>
</if>
<kw name="Status Should Be" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:02.706591" level="FAIL">Url: http://10.30.170.50: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-07-28T01:54:02.706347" elapsed="0.000646">Url: http://10.30.170.50: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-07-28T01:54:02.707266" elapsed="0.000022"/>
</kw>
<var name="${i}"/>
<status status="NOT RUN" start="2026-07-28T01:54:02.707146" elapsed="0.000179"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="NOT RUN" start="2026-07-28T01:54:02.707073" elapsed="0.000281"/>
</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-07-28T01:54:02.695929" elapsed="0.011574">Url: http://10.30.170.50: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-07-28T01:54:04.726787" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:04.727055" level="INFO">GET Response : url=http://10.30.170.50: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":1,"nanosecond":777000000}},"flags":""}]} 
 </msg>
<msg time="2026-07-28T01:54:04.727187" 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-07-28T01:54:04.716555" elapsed="0.010660"/>
</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-07-28T01:54:04.727706" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:04.727323" elapsed="0.000447"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:04.730347" 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":1,"nanosecond":777000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:04.727932" elapsed="0.002510"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:04.727799" elapsed="0.002722"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:04.727296" elapsed="0.003259"/>
</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-07-28T01:54:04.730735" elapsed="0.000267"/>
</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-07-28T01:54:04.731512" elapsed="0.003129"/>
</kw>
<var name="${i}">10.0.10.1</var>
<status status="PASS" start="2026-07-28T01:54:04.731285" elapsed="0.003427"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:54:04.731085" elapsed="0.003675"/>
</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-07-28T01:54:04.715129" elapsed="0.019718"/>
</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-07-28T01:54:02.691377" elapsed="2.043545"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:02.690036" elapsed="2.045182"/>
</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-07-28T01:54:04.750075" level="INFO">PUT Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.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-07-28T01:54:04.750208" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:04.750428" 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-07-28T01:54:04.736421" elapsed="0.014124"/>
</kw>
<doc>Push a flow through REST-API</doc>
<status status="PASS" start="2026-07-28T01:54:04.735670" elapsed="0.015181"/>
</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-07-28T01:54:04.762120" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:04.762395" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:04.762582" 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-07-28T01:54:04.752788" elapsed="0.009832"/>
</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-07-28T01:54:04.762859" elapsed="0.003242"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:04.751451" elapsed="0.014864"/>
</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-07-28T01:54:04.767951" 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-07-28T01:54:04.767539" elapsed="0.000450"/>
</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-07-28T01:54:04.780886" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:04.781109" level="INFO">GET Response : url=http://10.30.170.50: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":1,"nanosecond":777000000}},"flags":""}]} 
 </msg>
<msg time="2026-07-28T01:54:04.781223" 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-07-28T01:54:04.773427" elapsed="0.007823"/>
</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-07-28T01:54:04.781766" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:04.781370" elapsed="0.000465"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:04.784744" 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":1,"nanosecond":777000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:04.781997" elapsed="0.002804"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:04.781863" elapsed="0.002977"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:04.781340" elapsed="0.003580"/>
</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-07-28T01:54:04.785058" elapsed="0.000207"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:54:04.788814" 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":1,"nanosecond":777000000}},"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-07-28T01:54:04.785713" elapsed="0.003220">'{"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":1,"nanosecond":777000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-07-28T01:54:04.785526" elapsed="0.003515">'{"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":1,"nanosecond":777000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:54:04.785331" elapsed="0.003811">'{"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":1,"nanosecond":777000000}},"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-07-28T01:54:04.772756" elapsed="0.016562">'{"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":1,"nanosecond":777000000}},"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-07-28T01:54:06.808766" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:06.809025" level="INFO">GET Response : url=http://10.30.170.50: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":1,"nanosecond":777000000}},"flags":""}]} 
 </msg>
<msg time="2026-07-28T01:54:06.809196" 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-07-28T01:54:06.798917" elapsed="0.010330"/>
</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-07-28T01:54:06.810165" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:06.809421" elapsed="0.000833"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:06.814158" 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":1,"nanosecond":777000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:06.810504" elapsed="0.003783"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:06.810292" elapsed="0.004101"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:06.809383" elapsed="0.005117"/>
</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-07-28T01:54:06.814809" elapsed="0.000419"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:54:06.821061" 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":1,"nanosecond":777000000}},"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-07-28T01:54:06.816055" elapsed="0.005123">'{"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":1,"nanosecond":777000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="FAIL" start="2026-07-28T01:54:06.815730" elapsed="0.005620">'{"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":1,"nanosecond":777000000}},"flags":""}]}' does not contain '10.0.20.1'</status>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="FAIL" start="2026-07-28T01:54:06.815366" elapsed="0.006053">'{"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":1,"nanosecond":777000000}},"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-07-28T01:54:06.797095" elapsed="0.024462">'{"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":1,"nanosecond":777000000}},"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-07-28T01:54:08.837948" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:08.838302" level="INFO">GET Response : url=http://10.30.170.50: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":725000000}},"flags":""}]} 
 </msg>
<msg time="2026-07-28T01:54:08.838498" 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-07-28T01:54:08.829125" elapsed="0.009439"/>
</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-07-28T01:54:08.839193" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:08.838703" elapsed="0.000613"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:08.842961" 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":725000000}},"flags":""}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:08.839556" elapsed="0.003482"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:08.839353" elapsed="0.003735"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:08.838669" elapsed="0.004451"/>
</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-07-28T01:54:08.843300" elapsed="0.000294"/>
</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-07-28T01:54:08.844079" elapsed="0.003293"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-07-28T01:54:08.843893" elapsed="0.003523"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:54:08.843679" elapsed="0.003795"/>
</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-07-28T01:54:08.828279" elapsed="0.019261"/>
</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-07-28T01:54:04.768225" elapsed="4.079368"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:04.766798" elapsed="4.080929"/>
</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-07-28T01:54:08.860683" level="INFO">DELETE Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:08.860793" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:08.861000" 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-07-28T01:54:08.848443" elapsed="0.012616"/>
</kw>
<doc>Remove a flow</doc>
<status status="PASS" start="2026-07-28T01:54:08.848041" elapsed="0.013370"/>
</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-07-28T01:54:08.871679" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:08.871880" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:08.872034" 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-07-28T01:54:08.862980" elapsed="0.009092"/>
</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-07-28T01:54:08.872292" elapsed="0.002990"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:08.861842" elapsed="0.013602"/>
</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-07-28T01:54:08.876944" 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-07-28T01:54:08.876543" elapsed="0.000438"/>
</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-07-28T01:54:08.894625" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:08.894842" level="INFO">GET Response : url=http://10.30.170.50: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":725000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":1,"packets-matched":"0"}}]} 
 </msg>
<msg time="2026-07-28T01:54:08.894964" 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-07-28T01:54:08.887111" elapsed="0.007880"/>
</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-07-28T01:54:08.895405" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:08.895086" elapsed="0.000403"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:08.897784" 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":725000000}},"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-07-28T01:54:08.895660" elapsed="0.002189"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:08.895516" elapsed="0.002371"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:08.895062" elapsed="0.002849"/>
</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-07-28T01:54:08.898145" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:08.898105" elapsed="0.000082"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:08.898089" elapsed="0.000122"/>
</if>
<status status="NOT RUN" start="2026-07-28T01:54:08.897969" elapsed="0.000266"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:08.897952" 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-07-28T01:54:08.898380" elapsed="0.000235"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:54:08.902031" 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":725000000}},"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-07-28T01:54:08.898947" elapsed="0.003195">'{"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":725000000}},"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-07-28T01:54:08.898819" elapsed="0.003496">'{"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":725000000}},"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-07-28T01:54:08.898677" elapsed="0.003734">'{"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":725000000}},"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-07-28T01:54:08.886384" elapsed="0.016225">'{"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":725000000}},"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-07-28T01:54:10.924166" level="INFO">GET Request : url=http://10.30.170.50: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=node03t2wls1jx84rn1lgqxf31i517.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:10.924448" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:10.924657" 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-07-28T01:54:10.916489" elapsed="0.008208"/>
</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-07-28T01:54:10.925330" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:10.924842" elapsed="0.000574"/>
</branch>
<branch type="ELSE">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:10.928538" 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-07-28T01:54:10.925659" elapsed="0.002949"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:10.925473" elapsed="0.003184"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:10.924807" elapsed="0.003882"/>
</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-07-28T01:54:10.929014" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:10.928961" elapsed="0.000110"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:10.928940" elapsed="0.000162"/>
</if>
<status status="NOT RUN" start="2026-07-28T01:54:10.928771" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:10.928747" elapsed="0.000430"/>
</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-07-28T01:54:10.929348" elapsed="0.000270"/>
</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-07-28T01:54:10.930100" elapsed="0.002957"/>
</kw>
<var name="${i}">10.0.20.1</var>
<status status="PASS" start="2026-07-28T01:54:10.929897" elapsed="0.003223"/>
</iter>
<var>${i}</var>
<value>@{elements}</value>
<status status="PASS" start="2026-07-28T01:54:10.929702" elapsed="0.003529"/>
</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-07-28T01:54:10.915819" elapsed="0.017580"/>
</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-07-28T01:54:08.877211" elapsed="2.056294"/>
</kw>
<doc>Verify the flow</doc>
<status status="PASS" start="2026-07-28T01:54:08.875821" elapsed="2.057873"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:54:10.934594" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:54:10.934386" elapsed="0.000286"/>
</kw>
<doc>Test suite for RESTCONF FRM</doc>
<status status="PASS" start="2026-07-28T01:54:02.616934" elapsed="8.317772"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:10.936338" 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-07-28T01:54:10.936106" elapsed="0.000565"/>
</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-07-28T01:54:10.936816" elapsed="0.000153"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-07-28T01:54:10.937100" elapsed="0.000250"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:10.943380" 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-07-28T01:54:10.937509" elapsed="0.005980"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:11.199382" 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 16.300 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:54:10.943678" elapsed="0.255914"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:54:11.199904" elapsed="0.000321"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-07-28T01:54:10.935824" elapsed="0.264476"/>
</kw>
<doc>Test suite for MD-SAL NSF mininet OF13</doc>
<status status="PASS" start="2026-07-28T01:53:52.426993" elapsed="18.773359"/>
</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-07-28T01:54:11.234334" 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-07-28T01:54:11.234051" elapsed="0.000339"/>
</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-07-28T01:54:11.236725" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:11.236427" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:11.236400" elapsed="0.000412"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:54:11.237146" 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-07-28T01:54:11.237259" 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-07-28T01:54:11.236946" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:11.237837" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:54:11.237414" elapsed="0.000477"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:54:11.238428" 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-07-28T01:54:11.238031" elapsed="0.000440"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:54:11.239305" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:54:11.239383" 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-07-28T01:54:11.239003" 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-07-28T01:54:11.239562" elapsed="0.000340"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:54:11.240741" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:54:11.584988" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:53:54 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:54:11.240391" elapsed="0.344777"/>
</kw>
<msg time="2026-07-28T01:54:11.585263" 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-07-28T01:54:11.240057" elapsed="0.345296"/>
</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-07-28T01:54:11.238669" elapsed="0.346828"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:54:11.586010" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:54:12.772686" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:54:12.773303" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:54:12.773413" 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-07-28T01:54:11.585727" elapsed="1.187837"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:54:12.773976" elapsed="0.000778"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:12.775928" 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-07-28T01:54:12.775094" elapsed="0.001066"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:54:12.776814" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:12.776485" elapsed="0.000441"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:12.776340" elapsed="0.000638"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:54:12.777546" elapsed="0.000080"/>
</return>
<status status="PASS" start="2026-07-28T01:54:12.777178" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:12.777142" elapsed="0.000620"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:54:12.777841" 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-07-28T01:54:12.783340" elapsed="0.001070"/>
</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-07-28T01:54:12.784766" elapsed="0.000432"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:54:12.785472" elapsed="0.000105"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:54:12.778675" elapsed="0.006995"/>
</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-07-28T01:54:11.235906" elapsed="1.549863"/>
</kw>
<msg time="2026-07-28T01:54:12.785826" 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-07-28T01:54:11.235299" elapsed="1.550582"/>
</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-07-28T01:54:11.234846" elapsed="1.551119"/>
</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-07-28T01:54:12.788058" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:12.787779" elapsed="0.000337"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:12.787760" elapsed="0.000380"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:54:12.788511" 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-07-28T01:54:12.788619" 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-07-28T01:54:12.788308" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:12.789237" 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.224" 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-07-28T01:54:12.788813" elapsed="0.000473"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:54:12.789864" 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-07-28T01:54:12.789416" elapsed="0.000476"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:54:12.790795" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:54:12.790914" 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-07-28T01:54:12.790467" elapsed="0.000472"/>
</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-07-28T01:54:12.791152" elapsed="0.000388"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:54:12.792480" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:54:13.134541" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:54:11 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:54:12.792071" elapsed="0.342664"/>
</kw>
<msg time="2026-07-28T01:54:13.134834" 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-07-28T01:54:12.791692" elapsed="0.343240"/>
</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-07-28T01:54:12.790124" elapsed="0.344945"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.135666" 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-07-28T01:54:13.168714" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:54:13.169155" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:54:13.169259" 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-07-28T01:54:13.135327" elapsed="0.033985"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:54:13.169788" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:13.174127" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:13.170828" elapsed="0.003400"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:54:13.174936" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:13.174534" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:13.174416" elapsed="0.000690"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:54:13.175589" elapsed="0.000079"/>
</return>
<status status="PASS" start="2026-07-28T01:54:13.175230" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:13.175193" elapsed="0.000636"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:54:13.175913" 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-07-28T01:54:13.181535" elapsed="0.000614"/>
</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-07-28T01:54:13.182450" elapsed="0.000302"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:54:13.182985" elapsed="0.000156"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:54:13.178028" elapsed="0.005190"/>
</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-07-28T01:54:12.787243" elapsed="0.396159"/>
</kw>
<msg time="2026-07-28T01:54:13.183535" 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-07-28T01:54:12.786655" elapsed="0.396978"/>
</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-07-28T01:54:12.786168" elapsed="0.397585"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:11.234568" elapsed="1.949324"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.184836" 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-07-28T01:54:13.184131" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:13.185702" 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-07-28T01:54:13.185095" elapsed="0.000669"/>
</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-07-28T01:54:13.188421" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:54:13.188649" 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-07-28T01:54:13.187984" elapsed="0.000691"/>
</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-07-28T01:54:13.188813" elapsed="0.000334"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.190122" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:54:13.520336" 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 Tue Jul 28 01:53:36 UTC 2026

  System load:  0.03               Processes:             111
  Usage of /:   19.3% of 38.58GB   Users logged in:       0
  Memory usage: 4%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:54:13 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:54:13.189753" elapsed="0.330745"/>
</kw>
<msg time="2026-07-28T01:54:13.520580" 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-07-28T01:54:13.189341" elapsed="0.331312"/>
</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-07-28T01:54:13.187243" elapsed="0.333519"/>
</kw>
<msg time="2026-07-28T01:54:13.520825" 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-07-28T01:54:13.186669" elapsed="0.334205"/>
</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-07-28T01:54:13.186067" elapsed="0.334885"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.521325" level="INFO">Executing command 'sudo ovs-vsctl set-manager ptcp:6644'.</msg>
<msg time="2026-07-28T01:54:13.543662" 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-07-28T01:54:13.521171" elapsed="0.022634"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.585033" level="INFO">sudo mn --controller=remote,ip=10.30.170.50 --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-07-28T01:54:13.544180" elapsed="0.040917"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:13.730734" level="INFO">[?2004l*** Creating network
*** Adding controller
Connecting to remote controller at 10.30.170.50: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-07-28T01:54:13.585252" elapsed="0.145661"/>
</kw>
<doc>Basic setup/cleanup work that can be done safely before any system
is run.</doc>
<status status="PASS" start="2026-07-28T01:54:11.233573" elapsed="2.497466"/>
</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-07-28T01:54:13.901146" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b048cc90&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-07-28T01:54:13.900722" elapsed="0.000631"/>
</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-07-28T01:54:13.921184" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:54:13.922031" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:54:13 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Cache-Control': 'no-cache', 'Content-Type': 'application/yang-data+json', 'Content-Length': '5571'} 
 body={"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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-07-28T01:54:13.909Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:33:ab:7e:0f:a1","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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","flow-node-inventory:serial-number":"None"}]} 
 </msg>
<msg time="2026-07-28T01:54:13.922564" 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-07-28T01:54:13.906268" elapsed="0.016342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:13.928813" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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-07-28T01:54:13.909Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:33:ab:7e:0f:a1","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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:13.922981" elapsed="0.005926"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:54:13.931875" level="FAIL">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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-07-28T01:54:13.909Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:33:ab:7e:0f:a1","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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:13.929093" elapsed="0.003169">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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. ]
...: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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:13.932538" elapsed="0.000033"/>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:54:13.906131" elapsed="0.026539">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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. ]
...: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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:13.903849" elapsed="0.028945">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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. ]
...: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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:13.902228" elapsed="0.030811">'{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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. ]
...: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":"d6:53:46:71:b3: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"},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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.224","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-07-28T01:54:14.959195" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:14.960658" level="INFO">GET Response : url=http://10.30.170.50: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":47766,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":7000000}},"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,"opendayli... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:14.961244" 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-07-28T01:54:14.943562" elapsed="0.017749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:14.967917" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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":"0","byte-count":"0","duration":{"second":0,"nanosecond":7000000}},"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":"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-07-28T01:54:13.909Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:33:ab:7e:0f:a1","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":211000000},"bytes":{"transmitted":"261","received":"180"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d6:53:46:71:b3: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":206000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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":211000000},"bytes":{"transmitted":"175","received":"176"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:54:13.928Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:14.961889" elapsed="0.006798"/>
</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-07-28T01:54:14.968931" elapsed="0.003820"/>
</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-07-28T01:54:14.972994" elapsed="0.003799"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:54:14.943130" elapsed="0.033728"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:54:14.938066" elapsed="0.038892"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-07-28T01:54:14.934139" elapsed="0.042922"/>
</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-07-28T01:54:13.901554" elapsed="1.075581"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:14.980652" 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-07-28T01:54:14.977409" elapsed="0.003399"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:15.009093" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=1.071s, table=0, n_packets=3, n_bytes=262, 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-07-28T01:54:14.981165" elapsed="0.028010"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-07-28T01:54:13.899847" elapsed="1.109406"/>
</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-07-28T01:54:15.010568" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.010242" elapsed="0.000388"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.014232" 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-07-28T01:54:15.014428" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.014064" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.015153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.014648" elapsed="0.000542"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.015688" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.015366" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.016159" 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-07-28T01:54:15.015870" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.047775" 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-07-28T01:54:15.016340" elapsed="0.031479"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.050037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.048041" elapsed="0.002031"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.050680" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.050254" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.051238" 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-07-28T01:54:15.050889" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.051803" 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-07-28T01:54:15.051441" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.052326" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.052005" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.052870" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.052544" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.053409" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.053075" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.013672" elapsed="0.039865"/>
</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-07-28T01:54:15.061337" 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-07-28T01:54:15.061058" elapsed="0.000358"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.086781" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.086874" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.087036" 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-07-28T01:54:15.061581" elapsed="0.025486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.089513" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.087340" elapsed="0.002220"/>
</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-07-28T01:54:15.060563" elapsed="0.029069"/>
</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-07-28T01:54:15.053692" elapsed="0.036002"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.010070" elapsed="0.079665"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.090281" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.090013" 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-07-28T01:54:15.093973" 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-07-28T01:54:15.094162" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.093817" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.094868" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37312b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.094363" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.095489" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.095126" elapsed="0.000395"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.095983" 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-07-28T01:54:15.095688" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.096469" 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-07-28T01:54:15.096163" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.097343" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.096658" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.097922" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.097566" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.098529" 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-07-28T01:54:15.098177" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.099097" 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-07-28T01:54:15.098745" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.099639" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.099298" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.100159" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.099842" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.100713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37312b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.100369" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.093426" elapsed="0.007385"/>
</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-07-28T01:54:15.108392" 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-07-28T01:54:15.108137" elapsed="0.000341"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.121663" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.121758" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.121914" 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-07-28T01:54:15.108613" elapsed="0.013338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.125183" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.122215" elapsed="0.003034"/>
</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-07-28T01:54:15.107716" elapsed="0.017634"/>
</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-07-28T01:54:15.100977" elapsed="0.024458"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.089874" elapsed="0.035643"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.126264" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.125892" 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-07-28T01:54:15.131850" 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-07-28T01:54:15.132169" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.131611" elapsed="0.000605"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.133118" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.132451" elapsed="0.000710"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.133877" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.133405" elapsed="0.000512"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.134602" 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-07-28T01:54:15.134148" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.135342" 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-07-28T01:54:15.134885" elapsed="0.000497"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.136634" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.135647" elapsed="0.001032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.137438" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.136936" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.138258" 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-07-28T01:54:15.137775" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.139129" 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-07-28T01:54:15.138576" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.139731" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.139386" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.140254" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.139933" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.140793" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.140451" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.131031" elapsed="0.009873"/>
</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-07-28T01:54:15.148617" 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-07-28T01:54:15.148331" elapsed="0.000346"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.163671" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.163919" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.164164" 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-07-28T01:54:15.148811" elapsed="0.015410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.169846" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.164696" elapsed="0.005252"/>
</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-07-28T01:54:15.147908" elapsed="0.022174"/>
</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-07-28T01:54:15.141058" elapsed="0.029141"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.125679" elapsed="0.044605"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.171487" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.170883" 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-07-28T01:54:15.176960" 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-07-28T01:54:15.177211" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.176730" elapsed="0.000523"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.178167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.177521" elapsed="0.000688"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.178919" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.178477" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.179685" 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-07-28T01:54:15.179220" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.180375" 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-07-28T01:54:15.179936" elapsed="0.000476"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.181639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.180665" elapsed="0.001020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.182396" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.181916" elapsed="0.000557"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.183194" 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-07-28T01:54:15.182711" elapsed="0.000549"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.183770" 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-07-28T01:54:15.183437" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.184281" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.183964" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.184819" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.184494" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.185341" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.185029" 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-07-28T01:54:15.176175" elapsed="0.009262"/>
</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-07-28T01:54:15.192895" 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-07-28T01:54:15.192631" elapsed="0.000390"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.206964" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.207174" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.207402" 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-07-28T01:54:15.193159" elapsed="0.014330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.213083" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.207861" elapsed="0.005332"/>
</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-07-28T01:54:15.192184" elapsed="0.021178"/>
</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-07-28T01:54:15.185608" elapsed="0.027922"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.170576" elapsed="0.043050"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.214930" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.214250" elapsed="0.000854"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.220383" 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-07-28T01:54:15.220647" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.220174" elapsed="0.000515"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.221522" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b3731620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.220902" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.222188" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.221793" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.222857" 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-07-28T01:54:15.222448" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.223536" 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-07-28T01:54:15.223129" elapsed="0.000443"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.224804" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.223798" elapsed="0.001050"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.225583" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.225085" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.226338" 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-07-28T01:54:15.225865" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.227186" 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-07-28T01:54:15.226677" elapsed="0.000571"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.227761" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.227422" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.228344" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.228017" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.228889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b3731620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.228571" 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-07-28T01:54:15.219667" elapsed="0.009325"/>
</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-07-28T01:54:15.236422" 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-07-28T01:54:15.236154" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.249588" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.249742" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.249978" 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-07-28T01:54:15.236638" elapsed="0.013398"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.255498" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.250419" elapsed="0.005202"/>
</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-07-28T01:54:15.235732" elapsed="0.020022"/>
</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-07-28T01:54:15.229154" elapsed="0.026716"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.213911" elapsed="0.042045"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.257141" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.256537" 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-07-28T01:54:15.262054" 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-07-28T01:54:15.262206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.261903" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.262904" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.262444" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.263407" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.263110" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.263884" 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-07-28T01:54:15.263609" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.264351" 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-07-28T01:54:15.264074" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.265243" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.264556" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.265793" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.265439" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.266312" 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-07-28T01:54:15.265989" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.266851" 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-07-28T01:54:15.266533" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.267384" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.267071" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.267920" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.267599" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.268438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.268128" 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-07-28T01:54:15.261550" elapsed="0.007004"/>
</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-07-28T01:54:15.275913" 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-07-28T01:54:15.275662" elapsed="0.000312"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.285737" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.285842" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.285940" 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-07-28T01:54:15.276101" elapsed="0.009865"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.289898" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.286127" elapsed="0.003871"/>
</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-07-28T01:54:15.275230" elapsed="0.014901"/>
</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-07-28T01:54:15.268718" elapsed="0.021604"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.256211" elapsed="0.034202"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.291811" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.291110" elapsed="0.000804"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.298496" 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-07-28T01:54:15.298737" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.298280" elapsed="0.000501"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.299751" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.299009" elapsed="0.000782"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.300435" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.300001" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.301130" 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-07-28T01:54:15.300751" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.301869" 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-07-28T01:54:15.301422" elapsed="0.000484"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.303247" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.302113" elapsed="0.001229"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.304125" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.303582" elapsed="0.000604"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.304738" 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-07-28T01:54:15.304409" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.305279" 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-07-28T01:54:15.304929" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.305785" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.305485" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.306332" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.306022" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.306886" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.306577" 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-07-28T01:54:15.297764" elapsed="0.009231"/>
</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-07-28T01:54:15.314636" 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-07-28T01:54:15.314335" elapsed="0.000399"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.328402" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.328660" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.328936" 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-07-28T01:54:15.314864" elapsed="0.014137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.334879" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.329419" elapsed="0.005605"/>
</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-07-28T01:54:15.313935" elapsed="0.021224"/>
</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-07-28T01:54:15.307145" elapsed="0.028131"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.290732" elapsed="0.044627"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.335897" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.335606" elapsed="0.000337"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.339674" 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-07-28T01:54:15.339806" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.339495" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.340448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069abb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.339984" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.340960" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.340645" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.341445" 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-07-28T01:54:15.341137" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.341948" 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-07-28T01:54:15.341638" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.342994" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.342123" elapsed="0.000903"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.343556" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.343219" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.344139" 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-07-28T01:54:15.343790" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.344706" 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-07-28T01:54:15.344337" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.345280" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.344934" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.345850" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.345493" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.346397" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069abb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.346048" 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-07-28T01:54:15.339131" elapsed="0.007383"/>
</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-07-28T01:54:15.354150" 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-07-28T01:54:15.353860" elapsed="0.000356"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.367678" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.367840" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.368121" 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-07-28T01:54:15.354350" elapsed="0.013838"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.374129" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.368595" elapsed="0.005637"/>
</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-07-28T01:54:15.353445" elapsed="0.020922"/>
</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-07-28T01:54:15.346663" elapsed="0.027856"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.335475" elapsed="0.039213"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.376072" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.375388" elapsed="0.000805"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.381744" 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-07-28T01:54:15.381877" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.381606" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.382541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.382100" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.383069" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.382763" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.383584" 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-07-28T01:54:15.383288" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.384080" 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-07-28T01:54:15.383801" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.385108" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.384295" elapsed="0.000844"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.385675" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.385296" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.386264" 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-07-28T01:54:15.385909" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.386831" 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-07-28T01:54:15.386474" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.387405" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.387055" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.388007" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.387657" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.388571" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.388206" 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-07-28T01:54:15.381210" elapsed="0.007460"/>
</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-07-28T01:54:15.396474" 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-07-28T01:54:15.396171" elapsed="0.000369"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.409164" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.409397" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.409650" 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-07-28T01:54:15.396668" elapsed="0.013041"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.414797" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.410066" elapsed="0.004830"/>
</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-07-28T01:54:15.395769" elapsed="0.019281"/>
</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-07-28T01:54:15.388856" elapsed="0.026310"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.375017" elapsed="0.040234"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.416366" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.415801" 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-07-28T01:54:15.421611" 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-07-28T01:54:15.421753" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.421473" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.422359" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06916c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.421932" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.422833" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.422554" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.423306" 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-07-28T01:54:15.423032" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.423770" 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-07-28T01:54:15.423497" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.424688" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.423943" elapsed="0.000775"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.425190" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.424875" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.425706" 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-07-28T01:54:15.425382" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.426206" 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-07-28T01:54:15.425896" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.426710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.426394" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.427224" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.426903" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.427832" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06916c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.427521" 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-07-28T01:54:15.421124" elapsed="0.006805"/>
</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-07-28T01:54:15.435146" 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-07-28T01:54:15.434868" elapsed="0.000380"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.447976" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.448128" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.448332" 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-07-28T01:54:15.435379" elapsed="0.013010"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.454090" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.448777" elapsed="0.005415"/>
</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-07-28T01:54:15.434469" elapsed="0.019920"/>
</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-07-28T01:54:15.428077" elapsed="0.026468"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.415508" elapsed="0.039122"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.455715" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.455359" elapsed="0.000402"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.459638" 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-07-28T01:54:15.459778" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.459498" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.460469" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ff60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.460001" elapsed="0.000535"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.461008" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.460691" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.461511" 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-07-28T01:54:15.461220" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.462053" 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-07-28T01:54:15.461730" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.463104" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.462233" elapsed="0.000902"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.463688" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.463294" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.464242" 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-07-28T01:54:15.463884" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.464850" 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-07-28T01:54:15.464493" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.465430" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.465084" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.466131" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.465697" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.466761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ff60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.466380" elapsed="0.000427"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.459109" elapsed="0.007763"/>
</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-07-28T01:54:15.474845" 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-07-28T01:54:15.474584" elapsed="0.000376"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.487798" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.487954" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.488218" 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-07-28T01:54:15.475093" elapsed="0.013186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.494291" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.488723" elapsed="0.005684"/>
</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-07-28T01:54:15.474104" elapsed="0.020580"/>
</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-07-28T01:54:15.467096" elapsed="0.027708"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.454981" elapsed="0.040069"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.495897" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.495576" elapsed="0.000367"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.499771" 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-07-28T01:54:15.499907" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.499630" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.500604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.500124" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.501107" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.500786" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.501651" 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-07-28T01:54:15.501323" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.502141" 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-07-28T01:54:15.501832" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.503207" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.502349" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.503774" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.503396" elapsed="0.000454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.504394" 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-07-28T01:54:15.504006" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.504962" 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-07-28T01:54:15.504607" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.505542" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.505189" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.506081" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.505739" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.506677" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.506313" 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-07-28T01:54:15.499201" elapsed="0.007608"/>
</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-07-28T01:54:15.514920" 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-07-28T01:54:15.514596" elapsed="0.000394"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.525393" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.525484" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.525584" 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-07-28T01:54:15.515153" elapsed="0.010456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.531844" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.525815" elapsed="0.006128"/>
</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-07-28T01:54:15.514114" elapsed="0.018034"/>
</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-07-28T01:54:15.507003" elapsed="0.025260"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.495425" elapsed="0.036920"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.533947" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.533196" elapsed="0.000854"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.538745" 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-07-28T01:54:15.538921" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.538572" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.539604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.539146" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.540148" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.539830" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.540652" 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-07-28T01:54:15.540329" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.541181" 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-07-28T01:54:15.540867" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.542141" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.541362" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.542707" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.542331" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.543320" 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-07-28T01:54:15.542963" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.543957" 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-07-28T01:54:15.543566" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.544548" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.544187" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.545094" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:15.544749" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.545706" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.545337" elapsed="0.000411"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.538178" elapsed="0.007664"/>
</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-07-28T01:54:15.553884" 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-07-28T01:54:15.553624" elapsed="0.000363"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.564811" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.564879" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.565008" 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-07-28T01:54:15.554118" elapsed="0.010920"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.567985" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.565221" elapsed="0.002863"/>
</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-07-28T01:54:15.553080" elapsed="0.015217"/>
</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-07-28T01:54:15.545992" elapsed="0.022431"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.532668" elapsed="0.035875"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.569998" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.569200" elapsed="0.000901"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.577075" 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-07-28T01:54:15.577253" 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-07-28T01:54:15.576880" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.577936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.577435" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.578433" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.578151" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.579025" 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-07-28T01:54:15.578665" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.579500" 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-07-28T01:54:15.579204" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.580415" 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-07-28T01:54:15.579676" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.580939" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.580620" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.581510" 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-07-28T01:54:15.581174" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.582065" 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-07-28T01:54:15.581705" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.582573" 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-07-28T01:54:15.582257" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.583135" 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-07-28T01:54:15.582808" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.583701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.583372" 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-07-28T01:54:15.576470" elapsed="0.007329"/>
</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-07-28T01:54:15.591695" 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-07-28T01:54:15.591379" elapsed="0.000383"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.604258" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.604505" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.604655" 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-07-28T01:54:15.591894" elapsed="0.012800"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.608568" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.604987" elapsed="0.003694"/>
</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-07-28T01:54:15.590923" elapsed="0.017843"/>
</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-07-28T01:54:15.583948" elapsed="0.024892"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.568841" elapsed="0.040053"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.609741" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.609271" elapsed="0.000533"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.615400" 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-07-28T01:54:15.615686" 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-07-28T01:54:15.615132" elapsed="0.000596"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.616683" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.615983" elapsed="0.000744"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.617382" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.616940" elapsed="0.000544"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.618176" 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-07-28T01:54:15.617746" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.618994" 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-07-28T01:54:15.618488" elapsed="0.000589"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.620369" 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-07-28T01:54:15.619288" elapsed="0.001126"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.621208" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.620707" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.622033" 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-07-28T01:54:15.621549" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.622935" 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-07-28T01:54:15.622309" elapsed="0.000688"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.623671" 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-07-28T01:54:15.623212" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.624222" 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-07-28T01:54:15.623872" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.624784" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.624471" 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-07-28T01:54:15.614581" elapsed="0.010341"/>
</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-07-28T01:54:15.632716" 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-07-28T01:54:15.632449" elapsed="0.000407"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.646017" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.646231" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.646444" 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-07-28T01:54:15.632989" elapsed="0.013545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.652536" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.647096" elapsed="0.005541"/>
</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-07-28T01:54:15.632011" elapsed="0.020828"/>
</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-07-28T01:54:15.625075" elapsed="0.027881"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.609041" elapsed="0.043998"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.654347" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.653715" elapsed="0.000734"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.660176" 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-07-28T01:54:15.660363" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.659942" elapsed="0.000461"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.661222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06922a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.660631" elapsed="0.000677"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.661983" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.661545" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.662681" 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-07-28T01:54:15.662228" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.663418" 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-07-28T01:54:15.662991" elapsed="0.000483"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.664564" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.663686" elapsed="0.000921"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.665363" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.664876" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.666146" 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-07-28T01:54:15.665658" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.667024" 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-07-28T01:54:15.666489" elapsed="0.000596"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.667693" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.667354" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.668280" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.667968" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.668891" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06922a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.668534" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.659408" elapsed="0.009581"/>
</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-07-28T01:54:15.676477" 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-07-28T01:54:15.676213" elapsed="0.000324"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.690177" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.690318" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.690565" 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-07-28T01:54:15.676665" elapsed="0.013960"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.696170" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.691027" elapsed="0.005242"/>
</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-07-28T01:54:15.675814" elapsed="0.020583"/>
</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-07-28T01:54:15.669138" elapsed="0.027417"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.653331" elapsed="0.043310"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.697889" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.697221" elapsed="0.000778"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.703757" 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-07-28T01:54:15.703998" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.703562" elapsed="0.000478"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.704872" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f36a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.704250" elapsed="0.000662"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.705691" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.705221" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.706382" 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-07-28T01:54:15.705943" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.707178" 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-07-28T01:54:15.706699" elapsed="0.000515"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.708325" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.707494" elapsed="0.000874"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.709109" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.708662" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.709941" 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-07-28T01:54:15.709436" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.710730" 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-07-28T01:54:15.710213" elapsed="0.000659"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.711544" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.711092" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.712092" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.711744" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.712660" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f36a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.712289" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:15.703026" elapsed="0.009733"/>
</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-07-28T01:54:15.720404" 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-07-28T01:54:15.720155" elapsed="0.000361"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.732407" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.732587" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.732863" 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-07-28T01:54:15.720647" elapsed="0.012275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.738878" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.733424" elapsed="0.005555"/>
</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-07-28T01:54:15.719710" elapsed="0.019473"/>
</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-07-28T01:54:15.712909" elapsed="0.026405"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.696860" elapsed="0.042510"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.739916" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.739663" 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-07-28T01:54:15.743813" 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-07-28T01:54:15.743943" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.743676" elapsed="0.000296"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.744613" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.744162" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.745111" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.744793" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.745621" 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-07-28T01:54:15.745290" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.746106" 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-07-28T01:54:15.745832" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.746933" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.746319" elapsed="0.000645"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.747493" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.747158" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.748040" 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-07-28T01:54:15.747691" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.748636" 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-07-28T01:54:15.748270" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.749172" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.748831" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.749731" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.749369" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.750278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.749927" 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-07-28T01:54:15.743284" elapsed="0.007126"/>
</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-07-28T01:54:15.758310" 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-07-28T01:54:15.758022" elapsed="0.000380"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.772189" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.772328" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.772633" 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-07-28T01:54:15.758588" elapsed="0.014109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.778412" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.773118" elapsed="0.005511"/>
</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-07-28T01:54:15.757580" elapsed="0.021221"/>
</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-07-28T01:54:15.750578" elapsed="0.028354"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.739497" elapsed="0.039518"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.780389" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.779756" elapsed="0.000829"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.786032" 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-07-28T01:54:15.786193" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.785859" elapsed="0.000370"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.786916" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a34c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.786449" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.787422" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.787094" elapsed="0.000391"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.787998" 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-07-28T01:54:15.787683" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.788506" 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-07-28T01:54:15.788178" elapsed="0.000356"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.789447" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.788685" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.790023" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.789652" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.790595" 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-07-28T01:54:15.790228" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.791168" 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-07-28T01:54:15.790850" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.791769" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.791408" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.792366" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.792006" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.792934" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a34c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.792581" 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-07-28T01:54:15.785473" elapsed="0.007559"/>
</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-07-28T01:54:15.800867" 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-07-28T01:54:15.800573" elapsed="0.000357"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.815187" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.815429" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.815692" 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-07-28T01:54:15.801058" elapsed="0.014759"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.821252" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.816193" elapsed="0.005121"/>
</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-07-28T01:54:15.800160" elapsed="0.021237"/>
</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-07-28T01:54:15.793223" elapsed="0.028270"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.779338" elapsed="0.042210"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.822321" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.821922" elapsed="0.000461"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.827670" 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-07-28T01:54:15.827861" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.827473" elapsed="0.000520"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.828860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.828212" elapsed="0.000689"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.829623" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.829160" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.830311" 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-07-28T01:54:15.829877" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.831149" 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-07-28T01:54:15.830634" elapsed="0.000553"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.832145" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.831425" elapsed="0.000751"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.832702" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.832336" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.833225" 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-07-28T01:54:15.832908" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.833777" 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-07-28T01:54:15.833428" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.834289" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.833973" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.834882" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.834516" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.835427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.835097" 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-07-28T01:54:15.826869" elapsed="0.008677"/>
</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-07-28T01:54:15.842927" 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-07-28T01:54:15.842641" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.858108" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.858338" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.858616" 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-07-28T01:54:15.843125" elapsed="0.015553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.864107" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.859106" elapsed="0.005100"/>
</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-07-28T01:54:15.842194" elapsed="0.022166"/>
</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-07-28T01:54:15.835697" elapsed="0.028824"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.821687" elapsed="0.042924"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.865799" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.865150" elapsed="0.000751"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.871566" 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-07-28T01:54:15.871760" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.871310" elapsed="0.000503"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.872672" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a07c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.872033" elapsed="0.000682"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.873351" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.872931" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.874028" 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-07-28T01:54:15.873625" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.874713" 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-07-28T01:54:15.874288" elapsed="0.000471"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.876035" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.874986" elapsed="0.001096"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.876804" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.876313" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.877554" 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-07-28T01:54:15.877083" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.878299" 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-07-28T01:54:15.877843" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.879153" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.878597" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.879851" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.879499" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.880402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a07c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.880086" 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-07-28T01:54:15.870810" elapsed="0.009743"/>
</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-07-28T01:54:15.888863" 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-07-28T01:54:15.888444" elapsed="0.000622"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.905509" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.905680" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.905981" 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-07-28T01:54:15.889298" elapsed="0.016746"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.912194" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.906534" elapsed="0.005763"/>
</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-07-28T01:54:15.887819" elapsed="0.024617"/>
</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-07-28T01:54:15.880706" elapsed="0.031893"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.864850" elapsed="0.047838"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.913869" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.913241" elapsed="0.000735"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:15.918289" 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-07-28T01:54:15.918447" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.918141" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.919076" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06986d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.918642" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.919548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.919255" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.919988" 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-07-28T01:54:15.919722" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.920423" 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-07-28T01:54:15.920159" elapsed="0.000289"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.921165" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.920611" elapsed="0.000585"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.921694" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.921355" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.922193" 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-07-28T01:54:15.921887" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.922726" 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-07-28T01:54:15.922384" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.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;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-07-28T01:54:15.922956" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.923782" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.923466" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.924282" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06986d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.923976" 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-07-28T01:54:15.917804" elapsed="0.006574"/>
</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-07-28T01:54:15.931597" 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-07-28T01:54:15.931332" elapsed="0.000321"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.943698" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.943785" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.943914" 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-07-28T01:54:15.931780" elapsed="0.012169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.947181" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.944183" elapsed="0.003059"/>
</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-07-28T01:54:15.930930" elapsed="0.016392"/>
</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-07-28T01:54:15.924549" elapsed="0.022846"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.912933" elapsed="0.034515"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.948138" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.947792" 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-07-28T01:54:15.953706" 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-07-28T01:54:15.953896" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.953444" elapsed="0.000544"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.954997" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.954202" elapsed="0.000836"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.955715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.955358" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.956206" 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-07-28T01:54:15.955930" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.956745" 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-07-28T01:54:15.956419" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.957758" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.956920" elapsed="0.000869"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.958337" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.957982" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.958919" 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-07-28T01:54:15.958550" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.959518" 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-07-28T01:54:15.959148" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.960049" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:15.959712" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.960604" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:15.960244" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.961156" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.960844" 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-07-28T01:54:15.952885" elapsed="0.008406"/>
</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-07-28T01:54:15.969111" 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-07-28T01:54:15.968825" elapsed="0.000349"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:15.982908" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:15.983044" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:15.983174" 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-07-28T01:54:15.969336" elapsed="0.013874"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.988245" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.983565" elapsed="0.004779"/>
</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-07-28T01:54:15.968377" elapsed="0.020122"/>
</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-07-28T01:54:15.961439" elapsed="0.027178"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.947612" elapsed="0.041088"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.989795" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:15.989204" 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-07-28T01:54:15.996355" 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-07-28T01:54:15.996502" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:15.996221" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:15.997070" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fda0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:15.996682" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.997541" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:15.997247" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.997984" 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-07-28T01:54:15.997718" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:15.998423" 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-07-28T01:54:15.998157" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:15.999255" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:15.998612" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:15.999783" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:15.999447" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.000284" 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-07-28T01:54:15.999977" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.000808" 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-07-28T01:54:16.000494" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.001297" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.000997" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.001810" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.001504" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.002313" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fda0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.002009" 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-07-28T01:54:15.995889" elapsed="0.006519"/>
</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-07-28T01:54:16.009625" 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-07-28T01:54:16.009361" elapsed="0.000356"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.020621" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.020708" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.020832" 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-07-28T01:54:16.009847" elapsed="0.011020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.025321" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.021088" elapsed="0.004294"/>
</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-07-28T01:54:16.008963" elapsed="0.016517"/>
</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-07-28T01:54:16.002570" elapsed="0.022985"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:54:15.988919" elapsed="0.036688"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.026269" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.025922" 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-07-28T01:54:16.031380" 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-07-28T01:54:16.031584" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.031194" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.032505" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.031888" elapsed="0.000658"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.033196" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.032756" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.033845" 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-07-28T01:54:16.033445" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.034541" 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-07-28T01:54:16.034090" elapsed="0.000487"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.035676" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:16.034800" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.036369" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.035934" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.037186" 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-07-28T01:54:16.036707" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.037970" 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-07-28T01:54:16.037474" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.038768" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.038239" elapsed="0.000639"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.039552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.039090" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.040093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.039748" 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-07-28T01:54:16.030673" elapsed="0.009516"/>
</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-07-28T01:54:16.047705" 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-07-28T01:54:16.047440" elapsed="0.000325"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.058131" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.058195" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.058385" 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-07-28T01:54:16.047892" elapsed="0.010603"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.064092" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.058961" elapsed="0.005230"/>
</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-07-28T01:54:16.047042" elapsed="0.017343"/>
</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-07-28T01:54:16.040374" elapsed="0.024166"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.025742" elapsed="0.038883"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.065940" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.065270" elapsed="0.000831"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.070666" 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-07-28T01:54:16.070801" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:16.070506" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.071470" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.071023" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.072045" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.071722" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.072514" 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-07-28T01:54:16.072227" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.072960" 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-07-28T01:54:16.072691" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.073837" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.073176" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.074418" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.074063" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.075037" 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-07-28T01:54:16.074642" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.075562" 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-07-28T01:54:16.075234" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.076095" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:16.075754" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.076665" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.076292" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.077205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.076861" 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-07-28T01:54:16.070116" elapsed="0.007184"/>
</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-07-28T01:54:16.085035" 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-07-28T01:54:16.084749" elapsed="0.000348"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.096405" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.096680" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.097037" 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-07-28T01:54:16.085227" elapsed="0.011872"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.102767" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.097552" elapsed="0.005315"/>
</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-07-28T01:54:16.084298" elapsed="0.018698"/>
</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-07-28T01:54:16.077500" elapsed="0.025677"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.064914" elapsed="0.038354"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.104539" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.103878" 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-07-28T01:54:16.110003" 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-07-28T01:54:16.110173" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.109869" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.110835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f349f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.110353" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.111380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.111056" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.111885" 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-07-28T01:54:16.111574" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.112330" 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-07-28T01:54:16.112062" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.113281" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:16.112559" elapsed="0.000752"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.113846" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.113481" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.114421" 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-07-28T01:54:16.114075" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.114958" 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-07-28T01:54:16.114644" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.115547" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.115188" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.116092" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.115744" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.116657" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f349f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.116328" 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-07-28T01:54:16.109494" elapsed="0.007299"/>
</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-07-28T01:54:16.124534" 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-07-28T01:54:16.124230" elapsed="0.000404"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.137834" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.137972" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.138107" 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-07-28T01:54:16.124763" elapsed="0.013379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.143285" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.138414" elapsed="0.004983"/>
</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-07-28T01:54:16.123796" elapsed="0.019856"/>
</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-07-28T01:54:16.116941" elapsed="0.026833"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.103580" elapsed="0.040276"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.145141" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.144554" 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-07-28T01:54:16.152410" 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-07-28T01:54:16.152710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:16.152271" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.153318" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.152893" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.153876" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.153556" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.154363" 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-07-28T01:54:16.154052" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.154924" 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-07-28T01:54:16.154609" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.155754" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.155098" elapsed="0.000687"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.156341" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.155981" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.156902" 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-07-28T01:54:16.156551" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.157441" 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-07-28T01:54:16.157092" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.157993" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:16.157651" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.158658" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.158267" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.159212" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.158860" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.151900" elapsed="0.007409"/>
</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-07-28T01:54:16.167098" 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-07-28T01:54:16.166812" elapsed="0.000344"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.179995" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.180130" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.180258" 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-07-28T01:54:16.167324" elapsed="0.012969"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.183802" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.180539" elapsed="0.003324"/>
</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-07-28T01:54:16.166353" elapsed="0.017642"/>
</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-07-28T01:54:16.159509" elapsed="0.024560"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.144143" elapsed="0.039977"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.184950" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.184505" elapsed="0.000512"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.190389" 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-07-28T01:54:16.190626" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.190150" elapsed="0.000571"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.191703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.190938" elapsed="0.000806"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.192468" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.192007" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.193258" 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-07-28T01:54:16.192817" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.194018" 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-07-28T01:54:16.193579" elapsed="0.000476"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.195516" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.194321" elapsed="0.001230"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.196030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.195712" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.196632" 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-07-28T01:54:16.196266" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.197178" 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-07-28T01:54:16.196827" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.197731" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.197410" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.198314" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.197968" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.198880" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.198568" 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-07-28T01:54:16.189597" elapsed="0.009415"/>
</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-07-28T01:54:16.206851" 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-07-28T01:54:16.206496" elapsed="0.000420"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.218658" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.218760" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.218854" 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-07-28T01:54:16.207046" elapsed="0.011834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.224261" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.219039" elapsed="0.005322"/>
</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-07-28T01:54:16.206048" elapsed="0.018473"/>
</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-07-28T01:54:16.199163" elapsed="0.025550"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.184299" elapsed="0.040502"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.226047" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.225373" elapsed="0.000775"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.230775" 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-07-28T01:54:16.230906" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.230600" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.231558" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.231085" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.232055" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.231738" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.232560" 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-07-28T01:54:16.232233" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.233096" 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-07-28T01:54:16.232784" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.234090" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.233309" elapsed="0.000811"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.234702" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.234319" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.235246" 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-07-28T01:54:16.234900" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.235812" 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-07-28T01:54:16.235444" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.236383" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.236042" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.236946" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.236595" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.237507" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.237142" 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-07-28T01:54:16.230239" elapsed="0.007365"/>
</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-07-28T01:54:16.245401" 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-07-28T01:54:16.245146" elapsed="0.000372"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.257759" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.257830" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.257923" 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-07-28T01:54:16.245652" elapsed="0.012297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.264424" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.258109" elapsed="0.006533"/>
</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-07-28T01:54:16.244703" elapsed="0.020075"/>
</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-07-28T01:54:16.237790" elapsed="0.027171"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.225020" elapsed="0.040031"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.265989" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.265569" elapsed="0.000488"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.270244" 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-07-28T01:54:16.270430" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.270108" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.271122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063fc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.270652" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.271642" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.271344" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.272134" 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-07-28T01:54:16.271861" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.272674" 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-07-28T01:54:16.272349" elapsed="0.000353"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.273687" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.272854" elapsed="0.000864"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.274272" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.273913" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.274850" 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-07-28T01:54:16.274484" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.275443" 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-07-28T01:54:16.275081" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.276001" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.275691" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.276563" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.276238" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.277109" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063fc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.276762" 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-07-28T01:54:16.269734" elapsed="0.007471"/>
</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-07-28T01:54:16.285070" 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-07-28T01:54:16.284772" elapsed="0.000365"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.302353" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.302742" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.303054" 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-07-28T01:54:16.285266" elapsed="0.017868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.309074" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.303622" elapsed="0.005616"/>
</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-07-28T01:54:16.284315" elapsed="0.025068"/>
</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-07-28T01:54:16.277392" elapsed="0.032281"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.265281" elapsed="0.044485"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.311162" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.310359" elapsed="0.000912"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.316712" 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-07-28T01:54:16.316906" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.316470" elapsed="0.000477"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.317917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3a60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.317210" elapsed="0.000749"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.318672" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.318174" elapsed="0.000535"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.319361" 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-07-28T01:54:16.318970" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.320116" 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-07-28T01:54:16.319681" elapsed="0.000472"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.321527" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.320363" elapsed="0.001209"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.322361" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.321861" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.323250" 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-07-28T01:54:16.322755" elapsed="0.000610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.323914" 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-07-28T01:54:16.323555" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.324451" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.324107" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.325017" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.324667" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.325622" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3a60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.325259" 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-07-28T01:54:16.315921" elapsed="0.009801"/>
</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-07-28T01:54:16.333405" 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-07-28T01:54:16.333113" elapsed="0.000407"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.345986" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.346142" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.346415" 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-07-28T01:54:16.333653" elapsed="0.012908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.352211" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.346999" elapsed="0.005313"/>
</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-07-28T01:54:16.332672" elapsed="0.019875"/>
</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-07-28T01:54:16.325906" elapsed="0.026762"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.309995" elapsed="0.042758"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.354137" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.353400" elapsed="0.000841"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.358859" 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-07-28T01:54:16.359003" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.358672" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.359709" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0d60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.359224" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.360213" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.359890" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.360721" 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-07-28T01:54:16.360428" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.361245" 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-07-28T01:54:16.360936" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.362199" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.361421" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.362801" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.362395" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.363347" 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-07-28T01:54:16.363000" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.363912" 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-07-28T01:54:16.363592" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.364568" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.364194" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.365156" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.364805" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.365727" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0d60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.365358" elapsed="0.000412"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.358237" elapsed="0.007632"/>
</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-07-28T01:54:16.373774" 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-07-28T01:54:16.373447" elapsed="0.000434"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.388850" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.389005" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.389211" 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-07-28T01:54:16.374012" elapsed="0.015254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.395131" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.389746" elapsed="0.005490"/>
</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-07-28T01:54:16.373011" elapsed="0.022349"/>
</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-07-28T01:54:16.366025" elapsed="0.029447"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.353045" elapsed="0.042546"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.396385" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.395988" 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-07-28T01:54:16.401808" 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-07-28T01:54:16.402050" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.401559" elapsed="0.000535"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.403057" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.402307" elapsed="0.000791"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.403827" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.403312" elapsed="0.000553"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.404537" 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-07-28T01:54:16.404078" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.405271" 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-07-28T01:54:16.404837" elapsed="0.000471"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.406725" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.405585" elapsed="0.001183"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.407431" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.406987" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.407951" 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-07-28T01:54:16.407643" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.408468" 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-07-28T01:54:16.408142" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.408968" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.408665" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.409487" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.409162" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.409986" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.409682" 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-07-28T01:54:16.401011" elapsed="0.009070"/>
</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-07-28T01:54:16.417363" 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-07-28T01:54:16.417113" elapsed="0.000314"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.430671" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.430894" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.431103" 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-07-28T01:54:16.417570" elapsed="0.013590"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.436223" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.431569" elapsed="0.004749"/>
</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-07-28T01:54:16.416711" elapsed="0.019736"/>
</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-07-28T01:54:16.410230" elapsed="0.026368"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.395802" elapsed="0.040880"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.437770" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.437185" elapsed="0.000683"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.443213" 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-07-28T01:54:16.443395" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.443027" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.444260" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032ae30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.443665" elapsed="0.000634"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.444911" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.444528" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.445548" 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-07-28T01:54:16.445155" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.446158" 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-07-28T01:54:16.445789" elapsed="0.000404"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.447488" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.446396" elapsed="0.001136"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.448189" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.447750" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.448913" 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-07-28T01:54:16.448484" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.449630" 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-07-28T01:54:16.449180" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.450365" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.449896" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.451136" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.450702" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.451782" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032ae30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.451436" 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-07-28T01:54:16.442561" elapsed="0.009317"/>
</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-07-28T01:54:16.459443" 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-07-28T01:54:16.459160" elapsed="0.000367"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.470311" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.470550" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.470756" 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-07-28T01:54:16.459657" elapsed="0.011154"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.476383" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.471233" elapsed="0.005278"/>
</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-07-28T01:54:16.458727" elapsed="0.017986"/>
</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-07-28T01:54:16.452026" elapsed="0.024814"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.436902" elapsed="0.040083"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.478228" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.477596" elapsed="0.000736"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.482652" 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-07-28T01:54:16.482823" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.482478" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.483418" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.483002" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.483931" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.483656" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.484422" 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-07-28T01:54:16.484142" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.484930" 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-07-28T01:54:16.484613" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.485913" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.485106" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.486487" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.486101" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.487030" 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-07-28T01:54:16.486684" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.487549" 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-07-28T01:54:16.487224" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.488086" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.487742" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.488642" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.488317" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.489182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.488877" 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-07-28T01:54:16.482110" elapsed="0.007205"/>
</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-07-28T01:54:16.496938" 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-07-28T01:54:16.496691" elapsed="0.000346"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.508867" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.508976" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.509071" 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-07-28T01:54:16.497205" elapsed="0.011891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.516524" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.509252" elapsed="0.007375"/>
</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-07-28T01:54:16.496271" elapsed="0.020487"/>
</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-07-28T01:54:16.489479" elapsed="0.027471"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.477272" elapsed="0.039766"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.518281" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.517644" elapsed="0.000795"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.522584" 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-07-28T01:54:16.522758" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.522427" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.523353" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.522934" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.523861" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.523581" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.524347" 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-07-28T01:54:16.524038" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.524814" 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-07-28T01:54:16.524544" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.525822" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.524986" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.526370" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.526012" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.526953" 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-07-28T01:54:16.526602" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.527513" 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-07-28T01:54:16.527180" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.528051" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.527746" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.528609" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.528244" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.529114" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.528806" 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-07-28T01:54:16.522042" elapsed="0.007207"/>
</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-07-28T01:54:16.536951" 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-07-28T01:54:16.536663" elapsed="0.000354"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.547795" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.547865" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.547956" 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-07-28T01:54:16.537145" elapsed="0.010836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.553225" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.548140" elapsed="0.005192"/>
</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-07-28T01:54:16.536220" elapsed="0.017348"/>
</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-07-28T01:54:16.529401" elapsed="0.024356"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.517259" elapsed="0.036587"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.555243" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.554534" elapsed="0.000815"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.561345" 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-07-28T01:54:16.561528" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.561205" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.562160" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.561708" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.562728" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.562388" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.563216" 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-07-28T01:54:16.562908" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.563718" 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-07-28T01:54:16.563393" elapsed="0.000351"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.564642" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.563928" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.565219" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.564865" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.565778" 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-07-28T01:54:16.565451" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.566371" 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-07-28T01:54:16.566009" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.566924" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.566583" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.567658" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.567119" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.568205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.567857" 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-07-28T01:54:16.560836" elapsed="0.007465"/>
</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-07-28T01:54:16.576093" 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-07-28T01:54:16.575844" elapsed="0.000387"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.591440" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.591636" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.591911" 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-07-28T01:54:16.576364" elapsed="0.015609"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.597826" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.592393" elapsed="0.005537"/>
</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-07-28T01:54:16.575391" elapsed="0.022669"/>
</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-07-28T01:54:16.568506" elapsed="0.029671"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.554127" elapsed="0.044202"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.599525" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.598994" elapsed="0.000595"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.604891" 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-07-28T01:54:16.605124" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.604700" elapsed="0.000468"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.606078" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063c220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.605376" elapsed="0.000742"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.606854" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.606393" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.607558" 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-07-28T01:54:16.607148" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.608291" 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-07-28T01:54:16.607860" elapsed="0.000467"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.609726" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.608603" elapsed="0.001216"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.610601" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.610041" elapsed="0.000671"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.611393" 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-07-28T01:54:16.610931" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.611990" 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-07-28T01:54:16.611641" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.612587" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.612221" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.613176" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.612824" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.613779" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063c220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.613412" elapsed="0.000411"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.604122" elapsed="0.009757"/>
</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-07-28T01:54:16.621739" 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-07-28T01:54:16.621441" elapsed="0.000363"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.635427" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.635626" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.635901" 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-07-28T01:54:16.621976" elapsed="0.013984"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.641855" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.636388" elapsed="0.005633"/>
</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-07-28T01:54:16.621008" elapsed="0.021148"/>
</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-07-28T01:54:16.614028" elapsed="0.028242"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.598632" elapsed="0.043929"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.643633" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.643156" elapsed="0.000540"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.649071" 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-07-28T01:54:16.649254" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.648834" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.650248" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f38d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.649574" elapsed="0.000716"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.651000" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.650561" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.651750" 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-07-28T01:54:16.651301" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.652536" 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-07-28T01:54:16.652049" elapsed="0.000528"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.653874" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:16.652789" elapsed="0.001128"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.654742" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.654137" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.655530" 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-07-28T01:54:16.655061" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.656075" 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-07-28T01:54:16.655725" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.656673" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.656306" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.657218" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.656872" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.657787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f38d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.657416" elapsed="0.000413"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.648299" elapsed="0.009585"/>
</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-07-28T01:54:16.665682" 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-07-28T01:54:16.665413" elapsed="0.000331"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.680041" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.680266" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.680518" 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-07-28T01:54:16.665911" elapsed="0.014668"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.685708" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.680933" elapsed="0.004872"/>
</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-07-28T01:54:16.664976" elapsed="0.020960"/>
</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-07-28T01:54:16.658031" elapsed="0.028020"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.642794" elapsed="0.043342"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.687293" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.686731" elapsed="0.000646"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.692352" 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-07-28T01:54:16.692555" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.692116" elapsed="0.000481"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.693497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a1b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.692857" elapsed="0.000681"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.694190" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.693796" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.694959" 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-07-28T01:54:16.694525" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.695655" 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-07-28T01:54:16.695205" elapsed="0.000487"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.697049" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.695947" elapsed="0.001145"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.697893" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.697370" elapsed="0.000585"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.698711" 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-07-28T01:54:16.698170" elapsed="0.000649"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.699495" 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-07-28T01:54:16.699034" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.700071" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.699733" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.700637" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.700272" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.701182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a1b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.700836" 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-07-28T01:54:16.691649" elapsed="0.009631"/>
</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-07-28T01:54:16.709176" 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-07-28T01:54:16.708888" elapsed="0.000391"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.722975" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.723129" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.723397" 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-07-28T01:54:16.709411" elapsed="0.014079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.729378" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.723919" elapsed="0.005589"/>
</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-07-28T01:54:16.708386" elapsed="0.021253"/>
</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-07-28T01:54:16.701477" elapsed="0.028352"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.686410" elapsed="0.043505"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.731269" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.730625" elapsed="0.000749"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.736815" 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-07-28T01:54:16.737003" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.736579" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.737934" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.737300" elapsed="0.000674"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.738718" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.738239" elapsed="0.000515"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.739449" 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-07-28T01:54:16.739013" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.740146" 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-07-28T01:54:16.739719" elapsed="0.000463"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.741447" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.740437" elapsed="0.001072"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.742267" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.741774" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.743143" 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-07-28T01:54:16.742657" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.743798" 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-07-28T01:54:16.743416" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.744374" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.744065" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.744939" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.744626" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.745545" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.745175" elapsed="0.000413"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.736040" elapsed="0.009602"/>
</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-07-28T01:54:16.753296" 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-07-28T01:54:16.753004" elapsed="0.000355"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.767561" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.767782" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.768048" 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-07-28T01:54:16.753502" elapsed="0.014608"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.773750" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.768507" elapsed="0.005305"/>
</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-07-28T01:54:16.752606" elapsed="0.021286"/>
</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-07-28T01:54:16.745790" elapsed="0.028173"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.730196" elapsed="0.043818"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.774860" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.774441" elapsed="0.000481"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.780235" 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-07-28T01:54:16.780487" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.780046" elapsed="0.000485"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.781404" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.780787" elapsed="0.000656"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.782161" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.781726" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.782903" 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-07-28T01:54:16.782448" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.783619" 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-07-28T01:54:16.783200" elapsed="0.000445"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.784549" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.783796" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.785090" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.784735" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.785655" 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-07-28T01:54:16.785285" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.786199" 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-07-28T01:54:16.785884" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.786823" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.786479" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.787362" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.787020" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.787933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.787583" 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-07-28T01:54:16.779531" elapsed="0.008532"/>
</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-07-28T01:54:16.795709" 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-07-28T01:54:16.795445" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.806176" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.806535" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.806701" 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-07-28T01:54:16.795936" elapsed="0.010802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.810114" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.807007" elapsed="0.003215"/>
</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-07-28T01:54:16.795008" elapsed="0.015338"/>
</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-07-28T01:54:16.788217" elapsed="0.022202"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.774245" elapsed="0.036247"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.811212" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.810861" 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-07-28T01:54:16.816762" 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-07-28T01:54:16.816997" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.816571" elapsed="0.000468"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.817889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f089f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.817247" elapsed="0.000682"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.818657" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.818185" elapsed="0.000509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.819388" 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-07-28T01:54:16.818952" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.820109" 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-07-28T01:54:16.819670" elapsed="0.000475"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.821492" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.820401" elapsed="0.001136"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.822304" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.821799" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.823124" 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-07-28T01:54:16.822643" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.823905" 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-07-28T01:54:16.823396" elapsed="0.000567"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.824725" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.824225" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.825561" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.825048" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.826423" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f089f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.825839" elapsed="0.000666"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.816023" elapsed="0.010562"/>
</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-07-28T01:54:16.834583" 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-07-28T01:54:16.834283" elapsed="0.000401"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.847861" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.848073" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.848285" 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-07-28T01:54:16.834813" elapsed="0.013528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.854260" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.848792" elapsed="0.005571"/>
</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-07-28T01:54:16.833835" elapsed="0.020784"/>
</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-07-28T01:54:16.826794" elapsed="0.027950"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.810632" elapsed="0.044252"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.856376" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.855662" elapsed="0.000938"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.862110" 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-07-28T01:54:16.862335" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.861956" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.863067" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbf60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.862552" elapsed="0.000549"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.863671" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.863306" elapsed="0.000396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.864191" 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-07-28T01:54:16.863863" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.864748" 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-07-28T01:54:16.864409" elapsed="0.000367"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.865816" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:16.864932" elapsed="0.000914"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.866420" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.866007" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.867084" 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-07-28T01:54:16.866725" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.867657" 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-07-28T01:54:16.867279" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.868298" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.867943" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.868888" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.868525" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.869445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbf60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.869090" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.861540" elapsed="0.008024"/>
</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-07-28T01:54:16.877268" 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-07-28T01:54:16.877002" elapsed="0.000332"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.893076" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.893174" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.893304" 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-07-28T01:54:16.877483" elapsed="0.015875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.898880" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.893807" elapsed="0.005178"/>
</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-07-28T01:54:16.876421" elapsed="0.022697"/>
</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-07-28T01:54:16.869756" elapsed="0.029476"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.855241" elapsed="0.044165"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.900657" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.900032" elapsed="0.000730"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.905826" 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-07-28T01:54:16.905967" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.905669" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.906640" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.906148" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.907117" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.906836" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.907583" 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-07-28T01:54:16.907295" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.908030" 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-07-28T01:54:16.907759" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.908961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:16.908204" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.909479" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.909148" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.909984" 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-07-28T01:54:16.909676" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.910526" 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-07-28T01:54:16.910175" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.911020" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:16.910719" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.911552" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:16.911214" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.912071" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.911750" 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-07-28T01:54:16.905303" elapsed="0.006864"/>
</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-07-28T01:54:16.919621" 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-07-28T01:54:16.919341" elapsed="0.000346"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.934843" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.934953" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.935087" 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-07-28T01:54:16.919858" elapsed="0.015266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.940415" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.935389" elapsed="0.005163"/>
</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-07-28T01:54:16.918925" elapsed="0.021783"/>
</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-07-28T01:54:16.912316" elapsed="0.028511"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.899713" elapsed="0.041196"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.942111" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.941510" elapsed="0.000756"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:16.948749" 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-07-28T01:54:16.948881" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.948603" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.949516" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.949065" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.950000" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.949709" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.950507" 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-07-28T01:54:16.950197" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.950973" 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-07-28T01:54:16.950688" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.951891" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.951148" elapsed="0.000775"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.952409" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.952080" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.952949" 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-07-28T01:54:16.952635" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.953534" 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-07-28T01:54:16.953153" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.954054" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.953734" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.954625" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.954287" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.955159" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.954838" 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-07-28T01:54:16.948245" elapsed="0.007014"/>
</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-07-28T01:54:16.962712" 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-07-28T01:54:16.962430" elapsed="0.000347"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:16.971836" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:16.971931" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:16.972058" 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-07-28T01:54:16.962907" elapsed="0.009192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.975339" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.972330" elapsed="0.003070"/>
</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-07-28T01:54:16.962001" elapsed="0.013516"/>
</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-07-28T01:54:16.955409" elapsed="0.020185"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.941154" elapsed="0.034530"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.976383" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:16.976024" 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-07-28T01:54:16.981531" 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-07-28T01:54:16.981894" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.981307" elapsed="0.000630"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:16.982820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a56c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:16.982187" elapsed="0.000673"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.983574" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:16.983091" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.984242" 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-07-28T01:54:16.983834" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:16.984933" 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-07-28T01:54:16.984513" elapsed="0.000456"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:16.986173" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.985196" elapsed="0.001022"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.986920" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.986436" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.987675" 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-07-28T01:54:16.987209" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.988411" 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-07-28T01:54:16.987958" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.989148" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:16.988708" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.989901" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:16.989427" elapsed="0.000538"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:16.991830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a56c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:16.990512" elapsed="0.001472"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:16.980819" elapsed="0.011357"/>
</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-07-28T01:54:17.004424" 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-07-28T01:54:17.004023" elapsed="0.000525"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.016063" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.016213" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.016333" 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-07-28T01:54:17.004762" elapsed="0.011633"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.024361" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.016836" elapsed="0.007680"/>
</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-07-28T01:54:17.003346" elapsed="0.021312"/>
</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-07-28T01:54:16.992730" elapsed="0.032043"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:54:16.975830" elapsed="0.049027"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.026112" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.025452" elapsed="0.000841"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.030505" 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-07-28T01:54:17.030693" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:17.030336" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.031332" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.030880" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.031842" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.031536" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.032316" 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-07-28T01:54:17.032026" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.032801" 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-07-28T01:54:17.032513" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.033646" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.032991" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.034221" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.033854" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.034784" 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-07-28T01:54:17.034429" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.035315" 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-07-28T01:54:17.034991" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.035859" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:17.035539" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.036392" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.036063" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.036937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.036618" 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-07-28T01:54:17.029950" elapsed="0.007087"/>
</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-07-28T01:54:17.044539" 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-07-28T01:54:17.044263" elapsed="0.000377"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.059305" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.059512" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.059730" 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-07-28T01:54:17.044778" elapsed="0.015009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.065120" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.060174" elapsed="0.005064"/>
</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-07-28T01:54:17.043845" elapsed="0.021530"/>
</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-07-28T01:54:17.037199" elapsed="0.028338"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.025131" elapsed="0.040509"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.066895" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.066250" elapsed="0.000749"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.072242" 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-07-28T01:54:17.072435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:17.072036" elapsed="0.000462"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.073314" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.072733" elapsed="0.000620"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.074000" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.073598" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.074718" 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-07-28T01:54:17.074299" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.075386" 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-07-28T01:54:17.074987" elapsed="0.000435"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.076622" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:17.075675" elapsed="0.000990"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.077372" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.076913" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.078196" 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-07-28T01:54:17.077691" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.078839" 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-07-28T01:54:17.078513" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.079353" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:17.079044" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.079923" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:17.079606" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.080439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.080124" 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-07-28T01:54:17.071542" elapsed="0.009013"/>
</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-07-28T01:54:17.088029" 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-07-28T01:54:17.087770" elapsed="0.000321"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.100051" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.100158" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.100289" 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-07-28T01:54:17.088231" elapsed="0.012093"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.103592" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.100582" 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-07-28T01:54:17.087331" elapsed="0.016422"/>
</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-07-28T01:54:17.080706" elapsed="0.023121"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.065877" elapsed="0.038002"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.104604" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.104216" 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-07-28T01:54:17.109720" 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-07-28T01:54:17.109905" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:17.109520" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.110789" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.110188" elapsed="0.000650"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.111542" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.111107" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.112186" 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-07-28T01:54:17.111800" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.112866" 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-07-28T01:54:17.112451" elapsed="0.000452"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.113974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.113135" elapsed="0.000882"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.114726" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.114298" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.115250" 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-07-28T01:54:17.114935" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.115798" 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-07-28T01:54:17.115473" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.116318" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:17.115992" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.116847" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.116534" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.117368" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.117054" 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-07-28T01:54:17.109019" elapsed="0.008462"/>
</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-07-28T01:54:17.125236" 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-07-28T01:54:17.124961" elapsed="0.000335"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.137057" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.137198" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.137420" 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-07-28T01:54:17.125450" elapsed="0.012158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.142975" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.138007" elapsed="0.005069"/>
</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-07-28T01:54:17.124486" elapsed="0.018733"/>
</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-07-28T01:54:17.117644" elapsed="0.025706"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.104029" elapsed="0.039405"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.144643" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.144010" 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-07-28T01:54:17.150488" 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-07-28T01:54:17.150694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.150261" elapsed="0.000482"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.151596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.150966" elapsed="0.000680"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.152279" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.151867" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.152981" 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-07-28T01:54:17.152575" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.153665" 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-07-28T01:54:17.153232" elapsed="0.000472"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.156097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:17.153919" elapsed="0.002284"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.157993" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.156890" elapsed="0.001264"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.159442" 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-07-28T01:54:17.158550" elapsed="0.001024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.160837" 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-07-28T01:54:17.160008" elapsed="0.000926"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.162304" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:17.161369" elapsed="0.001045"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.163692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:17.162863" elapsed="0.001003"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.165146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.164218" elapsed="0.001084"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:17.149747" elapsed="0.015705"/>
</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-07-28T01:54:17.174317" 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-07-28T01:54:17.174000" elapsed="0.000490"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.190431" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.190628" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.190929" 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-07-28T01:54:17.174671" elapsed="0.016323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.196364" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.191376" elapsed="0.005117"/>
</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-07-28T01:54:17.173509" elapsed="0.023070"/>
</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-07-28T01:54:17.165915" elapsed="0.030738"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.143696" elapsed="0.053021"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.197534" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.197114" elapsed="0.000489"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.203103" 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-07-28T01:54:17.203407" 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-07-28T01:54:17.202884" elapsed="0.000584"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.204381" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.203746" elapsed="0.000739"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.205212" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.204752" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.205943" 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-07-28T01:54:17.205485" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.206707" 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-07-28T01:54:17.206246" elapsed="0.000488"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.207510" 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-07-28T01:54:17.206900" elapsed="0.000642"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.208071" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.207701" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.208646" 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-07-28T01:54:17.208272" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.209167" 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-07-28T01:54:17.208853" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.209778" 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-07-28T01:54:17.209408" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.210409" 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-07-28T01:54:17.210021" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.210999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.210634" 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-07-28T01:54:17.202320" elapsed="0.008779"/>
</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-07-28T01:54:17.218992" 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-07-28T01:54:17.218694" elapsed="0.000367"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.232376" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.232618" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.232836" 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-07-28T01:54:17.219227" elapsed="0.013665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.240262" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.233339" elapsed="0.007041"/>
</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-07-28T01:54:17.218263" elapsed="0.022301"/>
</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-07-28T01:54:17.211251" elapsed="0.029434"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.196876" elapsed="0.043894"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.242272" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.241424" elapsed="0.000945"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.246082" 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-07-28T01:54:17.246300" 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-07-28T01:54:17.245925" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.246938" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4e00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.246499" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.247443" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.247162" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.247952" 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-07-28T01:54:17.247676" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.248526" 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-07-28T01:54:17.248227" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.249266" 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-07-28T01:54:17.248742" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.249844" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.249474" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.250407" 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-07-28T01:54:17.250055" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.250974" 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-07-28T01:54:17.250620" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.251530" 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-07-28T01:54:17.251169" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.252123" 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-07-28T01:54:17.251731" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.252690" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4e00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.252323" elapsed="0.000411"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:17.245544" elapsed="0.007248"/>
</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-07-28T01:54:17.260928" 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-07-28T01:54:17.260628" elapsed="0.000359"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.276390" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.276577" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.276791" 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-07-28T01:54:17.261166" elapsed="0.015746"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.281071" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.277295" elapsed="0.003838"/>
</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-07-28T01:54:17.260143" elapsed="0.021072"/>
</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-07-28T01:54:17.252942" elapsed="0.028461"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.241029" elapsed="0.040454"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.282300" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.281867" elapsed="0.000497"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.287902" 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-07-28T01:54:17.288280" 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-07-28T01:54:17.287657" elapsed="0.000666"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.288984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.288510" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.289511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.289169" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.290019" 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-07-28T01:54:17.289692" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.290527" 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-07-28T01:54:17.290197" elapsed="0.000356"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.291313" 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-07-28T01:54:17.290703" elapsed="0.000641"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.291877" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.291517" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.292427" 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-07-28T01:54:17.292074" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.293073" 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-07-28T01:54:17.292677" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.293628" 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-07-28T01:54:17.293270" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.294208" 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-07-28T01:54:17.293828" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.294803" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.294407" elapsed="0.000438"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:17.287074" elapsed="0.007825"/>
</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-07-28T01:54:17.302622" 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-07-28T01:54:17.302304" elapsed="0.000376"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.314127" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.314329" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.314492" 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-07-28T01:54:17.302807" elapsed="0.011724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.317942" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.314755" elapsed="0.003286"/>
</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-07-28T01:54:17.301799" elapsed="0.016335"/>
</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-07-28T01:54:17.295049" elapsed="0.023158"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.281632" elapsed="0.036636"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.319489" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.318837" elapsed="0.000771"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:17.327151" 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-07-28T01:54:17.327288" 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-07-28T01:54:17.327000" elapsed="0.000318"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.327903" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.327493" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.328385" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.328101" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.328878" 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-07-28T01:54:17.328594" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.329346" 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-07-28T01:54:17.329062" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.330119" 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-07-28T01:54:17.329545" elapsed="0.000606"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.330683" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.330322" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.331219" 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-07-28T01:54:17.330892" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.331771" 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-07-28T01:54:17.331416" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.332296" 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-07-28T01:54:17.331980" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.332842" 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-07-28T01:54:17.332513" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.333372" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.333046" 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-07-28T01:54:17.326641" elapsed="0.006845"/>
</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-07-28T01:54:17.341036" 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-07-28T01:54:17.340767" elapsed="0.000367"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.351943" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.352030" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.352159" 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-07-28T01:54:17.341268" elapsed="0.010927"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.355446" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.352418" elapsed="0.003123"/>
</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-07-28T01:54:17.340325" elapsed="0.015304"/>
</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-07-28T01:54:17.333642" elapsed="0.022062"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.318512" elapsed="0.037244"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.356479" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.356098" 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-07-28T01:54:17.361590" 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-07-28T01:54:17.361781" 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-07-28T01:54:17.361368" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:17.362705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1ede0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:17.362094" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.363381" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:17.362979" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.364083" 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-07-28T01:54:17.363678" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:17.364779" 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-07-28T01:54:17.364348" elapsed="0.000469"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:17.365925" 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-07-28T01:54:17.365033" elapsed="0.000959"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.366736" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.366243" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.367517" 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-07-28T01:54:17.367020" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.368265" 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-07-28T01:54:17.367800" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.369045" 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-07-28T01:54:17.368589" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.369891" 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-07-28T01:54:17.369394" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.370631" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1ede0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:17.370247" elapsed="0.000428"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:17.360878" elapsed="0.009855"/>
</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-07-28T01:54:17.378256" 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-07-28T01:54:17.377984" elapsed="0.000336"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:17.390420" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:17.390632" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:54:17.390847" 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-07-28T01:54:17.378466" elapsed="0.012439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.396396" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:17.391328" elapsed="0.005221"/>
</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-07-28T01:54:17.377548" elapsed="0.019140"/>
</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-07-28T01:54:17.370884" elapsed="0.025933"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-07-28T01:54:17.355897" elapsed="0.041019"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:54:15.009888" elapsed="2.387104"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.398498" level="INFO">Length is 57.</msg>
<msg time="2026-07-28T01:54:17.398589" 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-07-28T01:54:17.397382" elapsed="0.001231"/>
</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-07-28T01:54:17.435321" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:17.437261" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"priority":3... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:17.437538" 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-07-28T01:54:17.402731" elapsed="0.034836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.441565" 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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"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":810000000}},"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":850000000}},"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":753000000}},"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":75000000}},"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":118000000}},"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":161000000}},"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":195000000}},"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":235000000}},"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":285000000}},"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":329000000}},"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":363000000}},"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":397000000}},"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":386000000}},"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":914000000}},"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":425000000}},"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":464000000}},"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":504000000}},"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":545000000}},"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":588000000}},"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":632000000}},"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":950000000}},"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":676000000}},"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":991000000}},"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":714000000}},"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":1,"nanosecond":28000000}},"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":"#UF$TABLE*2-8","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":39000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":209000000}},"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":795000000}},"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":830000000}},"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":"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":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":336000000}},"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":861000000}},"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-12","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":86000000}},"flags":""},{"id":"#UF$TABLE*2-11","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":128000000}},"flags":""},{"id":"#UF$TABLE*2-14","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":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"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-07-28T01:54:17.437764" elapsed="0.004221"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:54:17.446056" level="INFO">Item found from container 65 times.</msg>
<msg time="2026-07-28T01:54:17.446443" 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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"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":810000000}},"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":850000000}},"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":753000000}},"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":75000000}},"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":118000000}},"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":161000000}},"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":195000000}},"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":235000000}},"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":285000000}},"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":329000000}},"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":363000000}},"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":397000000}},"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":386000000}},"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":914000000}},"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":425000000}},"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":464000000}},"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":504000000}},"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":545000000}},"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":588000000}},"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":632000000}},"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":950000000}},"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":676000000}},"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":991000000}},"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":714000000}},"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":1,"nanosecond":28000000}},"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":"#UF$TABLE*2-8","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":39000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":209000000}},"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":795000000}},"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":830000000}},"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":"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":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":336000000}},"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":861000000}},"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-12","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":86000000}},"flags":""},{"id":"#UF$TABLE*2-11","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":128000000}},"flags":""},{"id":"#UF$TABLE*2-14","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":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:17.442149" elapsed="0.004768">'{"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":445000000}},"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. ]
...w-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:17.402376" elapsed="0.044710">'{"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":445000000}},"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. ]
...w-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:19.475163" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:19.479739" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"priority":3... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:19.480323" 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-07-28T01:54:19.456347" elapsed="0.024039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:19.487619" 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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"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":810000000}},"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":850000000}},"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":753000000}},"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":75000000}},"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":118000000}},"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":161000000}},"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":195000000}},"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":235000000}},"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":285000000}},"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":329000000}},"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":363000000}},"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":397000000}},"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":386000000}},"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":914000000}},"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":425000000}},"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":464000000}},"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":504000000}},"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":545000000}},"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":588000000}},"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":632000000}},"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":950000000}},"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":676000000}},"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":991000000}},"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":714000000}},"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":1,"nanosecond":28000000}},"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":"#UF$TABLE*2-8","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":39000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":209000000}},"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":795000000}},"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":830000000}},"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":"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":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":336000000}},"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":861000000}},"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-12","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":86000000}},"flags":""},{"id":"#UF$TABLE*2-11","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":128000000}},"flags":""},{"id":"#UF$TABLE*2-14","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":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"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-07-28T01:54:19.480927" elapsed="0.007101"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:54:19.492153" level="INFO">Item found from container 65 times.</msg>
<msg time="2026-07-28T01:54:19.492539" 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":445000000}},"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":480000000}},"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":521000000}},"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":561000000}},"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":605000000}},"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":648000000}},"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":684000000}},"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":724000000}},"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":769000000}},"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":810000000}},"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":850000000}},"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":753000000}},"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":75000000}},"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":118000000}},"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":161000000}},"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":195000000}},"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":235000000}},"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":285000000}},"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":329000000}},"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":363000000}},"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":397000000}},"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":386000000}},"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":914000000}},"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":425000000}},"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":464000000}},"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":504000000}},"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":545000000}},"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":588000000}},"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":632000000}},"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":950000000}},"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":676000000}},"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":991000000}},"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":714000000}},"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":1,"nanosecond":28000000}},"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":"#UF$TABLE*2-8","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":39000000}},"flags":""},{"id":"#UF$TABLE*2-9","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":209000000}},"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":795000000}},"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":830000000}},"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":"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":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":336000000}},"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":861000000}},"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-12","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":86000000}},"flags":""},{"id":"#UF$TABLE*2-11","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":128000000}},"flags":""},{"id":"#UF$TABLE*2-14","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":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:19.488208" elapsed="0.004940">'{"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":445000000}},"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. ]
...w-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:19.455636" elapsed="0.037702">'{"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":445000000}},"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. ]
...w-statistics":{"packet-count":"0","byte-count":"0","duration":{"second":0,"nanosecond":290000000}},"flags":""},{"id":"#UF$TABLE*2-13","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":255000000}},"flags":""},{"id":"#UF$TABLE*2-10","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":165000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":47,"packets-matched":"0"}}]}' contains 'priority' 65 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-07-28T01:54:21.523396" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:21.524858" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/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":518000000}},"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":12000000}},"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":553000000}},"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":593000000}},"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":633000000}},"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":677000000}},"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":12000000}},"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":112000000}},"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":720000000}},"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":158000000}},"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":756000000}},"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":200000000}},"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":796000000}},"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":238000000}},"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-07-28T01:54:21.525442" 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-07-28T01:54:21.500770" elapsed="0.024822"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.532159" 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":518000000}},"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":12000000}},"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":553000000}},"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":593000000}},"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":633000000}},"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":677000000}},"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":12000000}},"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":112000000}},"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":720000000}},"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":158000000}},"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":756000000}},"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":200000000}},"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":796000000}},"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":238000000}},"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":841000000}},"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":282000000}},"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":882000000}},"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":922000000}},"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":825000000}},"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":147000000}},"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":861000000}},"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":190000000}},"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":902000000}},"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":233000000}},"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":941000000}},"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":267000000}},"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":307000000}},"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":357000000}},"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":401000000}},"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":2,"nanosecond":991000000}},"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":435000000}},"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":469000000}},"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":408000000}},"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":458000000}},"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":986000000}},"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":497000000}},"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":573000000}},"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":536000000}},"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":576000000}},"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":617000000}},"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":660000000}},"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":653000000}},"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":704000000}},"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":687000000}},"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":4,"nanosecond":22000000}},"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":748000000}},"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":726000000}},"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":63000000}},"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":786000000}},"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":775000000}},"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":100000000}},"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":817000000}},"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":867000000}},"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":902000000}},"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":933000000}},"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":362000000}},"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":327000000}},"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-07-28T01:54:21.526072" elapsed="0.007059"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.537932" 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-07-28T01:54:21.533568" elapsed="0.004535"/>
</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-07-28T01:54:21.500082" elapsed="0.038098"/>
</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-07-28T01:54:17.398784" elapsed="4.139491"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:21.541033" 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-07-28T01:54:21.538440" elapsed="0.002653"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:21.689042" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=7.630s, table=0, n_packets=11, n_bytes=902, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=4.111s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=output:"s1-eth1"
 cookie=0x0, duration=4.191s, 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.225s, 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.264s, 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.313s, 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.440s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xdd, duration=4.355s, 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.460s, 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.524s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=5.471s, 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.440s, 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.399s, 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.479s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.529s, 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.728s, 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.685s, 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.324s, 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.198s, 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.550s, 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=6.091s, 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=6.056s, 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.650s, 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.550s, 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.820s, 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.776s, 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.738s, 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.696s, 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.939s, 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.865s, 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=5.074s, 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=5.035s, 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.996s, 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.900s, 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.946s, 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=5.114s, 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=5.155s, 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.286s, 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.242s, 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.363s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=5.405s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=5.638s, 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.560s, 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.601s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=5.771s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=5.805s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=5.845s, 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.895s, 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.973s, 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=6.007s, 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=6.131s, 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.171s, 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.215s, 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.258s, 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.294s, 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.334s, 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.379s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=6.420s, 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-07-28T01:54:21.541251" elapsed="0.148139"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:54:15.009332" elapsed="6.680304"/>
</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-07-28T01:54:21.701875" 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-07-28T01:54:21.702100" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:21.701699" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:21.702899" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:21.702322" elapsed="0.000606"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.703423" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:21.703085" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.704149" 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-07-28T01:54:21.703659" elapsed="0.000521"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.704717" 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-07-28T01:54:21.704353" elapsed="0.000390"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.705664" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:21.704937" elapsed="0.000758"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.706298" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:21.705899" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.706889" 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-07-28T01:54:21.706519" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.707502" 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-07-28T01:54:21.707119" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.708092" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:21.707700" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.708670" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:21.708289" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.709538" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:21.708906" elapsed="0.000678"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:21.701272" elapsed="0.008373"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.710315" 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-07-28T01:54:21.709844" elapsed="0.000503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.710801" 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-07-28T01:54:21.710516" 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-07-28T01:54:21.719318" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:21.718949" elapsed="0.000396"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:21.748673" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:21.748992" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:21.749162" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:21.719600" elapsed="0.029626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.749852" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:21.749480" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.752417" 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-07-28T01:54:21.750083" elapsed="0.002408"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.754568" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.752627" elapsed="0.002002"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.752597" elapsed="0.002057"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.758006" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:21.758054" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:21.754800" elapsed="0.003277"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:21.760083" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:21.758154" elapsed="0.001987"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.758135" elapsed="0.002030"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:21.760202" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:21.760489" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:21.760536" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:21.718582" elapsed="0.041977"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.763004" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.761248" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.761230" elapsed="0.001843"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.763762" 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-07-28T01:54:21.763265" elapsed="0.000525"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.764379" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:21.763985" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:21.764470" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:21.764700" 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-07-28T01:54:21.760857" elapsed="0.003868"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:21.764886" elapsed="0.000457"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:21.717909" elapsed="0.047604"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.775865" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:21.775428" elapsed="0.000469"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:21.809828" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:21.810384" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:21.810745" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:21.776081" elapsed="0.034692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.812362" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:21.811892" elapsed="0.000524"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.815347" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:21.812576" elapsed="0.003941"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.818599" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.816621" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.816591" elapsed="0.002093"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.847030" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:21.847086" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:21.818835" elapsed="0.028275"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:21.849223" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:21.847208" elapsed="0.002074"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.847185" elapsed="0.002123"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:21.849347" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:21.849624" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:21.849670" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:21.774905" elapsed="0.074788"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.852190" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.850349" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.850331" elapsed="0.001929"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.852944" 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-07-28T01:54:21.852425" elapsed="0.000548"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.853607" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:21.853185" elapsed="0.000448"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:21.853684" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:21.853910" 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-07-28T01:54:21.849951" elapsed="0.003985"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:21.854103" elapsed="0.000512"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:21.774087" elapsed="0.080597"/>
</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-07-28T01:54:21.697564" elapsed="0.157181"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:21.689912" elapsed="0.165006"/>
</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-07-28T01:54:21.867049" 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-07-28T01:54:21.867294" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:21.866881" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:21.868107" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069bb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:21.867577" elapsed="0.000560"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.868639" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:21.868294" elapsed="0.000371"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.869134" 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-07-28T01:54:21.868855" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:21.869692" 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-07-28T01:54:21.869359" elapsed="0.000359"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.870658" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:21.869871" elapsed="0.000819"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.871267" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:21.870903" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.871992" 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-07-28T01:54:21.871603" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.872616" 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-07-28T01:54:21.872228" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.873177" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:21.872815" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.873761" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:21.873413" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.874324" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069bb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:21.874001" 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-07-28T01:54:21.866484" elapsed="0.007941"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.875093" 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-07-28T01:54:21.874640" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.875584" 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-07-28T01:54:21.875321" 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-07-28T01:54:21.884395" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:21.884076" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:21.893076" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:21.893335" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:21.893532" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:21.884616" elapsed="0.008958"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.894256" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:21.893803" elapsed="0.000522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.897816" 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-07-28T01:54:21.894554" elapsed="0.003392"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.900897" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.898111" elapsed="0.002864"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.898077" elapsed="0.002974"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.905245" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:21.905291" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:21.901262" elapsed="0.004052"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:21.907278" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:21.905389" elapsed="0.001947"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.905371" elapsed="0.001989"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:21.907393" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:54:21.907655" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:21.907701" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:21.883656" elapsed="0.024067"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.910053" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.908342" elapsed="0.001756"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.908324" elapsed="0.001796"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.910767" 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-07-28T01:54:21.910305" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.911353" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:21.910957" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:21.911429" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:21.911665" 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-07-28T01:54:21.907962" elapsed="0.003729"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:21.911863" elapsed="0.000457"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:21.882927" elapsed="0.029492"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.920221" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:21.919913" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:21.949569" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:21.950729" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:21.951507" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:21.920380" elapsed="0.031191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.952716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:21.952024" elapsed="0.000796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.958163" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:21.953142" elapsed="0.006512"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.962570" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.959794" elapsed="0.002852"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.959760" elapsed="0.002919"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:21.993391" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:21.993447" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:21.962941" elapsed="0.030545"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:21.995541" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:21.993628" elapsed="0.001973"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.993602" elapsed="0.002024"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:21.995663" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:54:21.995951" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:21.995998" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:21.919521" elapsed="0.076501"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:21.998358" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:21.996683" elapsed="0.001721"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:21.996664" elapsed="0.001761"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.999129" 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-07-28T01:54:21.998630" elapsed="0.000526"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:21.999761" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:21.999321" elapsed="0.000468"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:21.999840" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.000066" 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-07-28T01:54:21.996271" elapsed="0.003821"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.000252" elapsed="0.000462"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:21.918889" elapsed="0.081890"/>
</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-07-28T01:54:21.862771" elapsed="0.138067"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:21.855192" elapsed="0.145773"/>
</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-07-28T01:54:22.012923" 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-07-28T01:54:22.013099" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.012773" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.013784" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.013323" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.014290" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.014002" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.014841" 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-07-28T01:54:22.014525" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.015331" 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-07-28T01:54:22.015019" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.016229" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.015556" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.016814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.016419" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.017487" 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-07-28T01:54:22.017101" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.018094" 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-07-28T01:54:22.017723" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.018669" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.018294" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.019236" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.018906" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.019886" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.019489" elapsed="0.000442"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:22.012385" elapsed="0.007606"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.020608" 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-07-28T01:54:22.020148" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.021082" 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-07-28T01:54:22.020793" elapsed="0.000348"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.029566" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.029202" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.036672" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.037033" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.037182" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.029731" elapsed="0.007487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.037915" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.037510" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.041972" 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-07-28T01:54:22.038179" elapsed="0.003874"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.045099" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.042233" elapsed="0.002937"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.042201" elapsed="0.003002"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.049039" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.049127" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.045417" elapsed="0.003734"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.051017" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.049227" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.049208" elapsed="0.001925"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.051167" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:22.051371" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.051415" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.028846" elapsed="0.022592"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.053766" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.052049" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.052031" elapsed="0.001803"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.054422" 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-07-28T01:54:22.054020" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.055027" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.054670" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.055140" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:22.055327" 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-07-28T01:54:22.051717" elapsed="0.003636"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.055570" elapsed="0.000477"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.028189" elapsed="0.027924"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.064310" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.063971" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.082186" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.083362" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.084172" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.064480" elapsed="0.019755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.085408" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.084754" elapsed="0.000859"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.090787" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.086005" elapsed="0.006220"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.094996" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.092331" elapsed="0.002735"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.092303" elapsed="0.002795"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.125215" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.125263" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.095341" elapsed="0.029946"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.127309" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.125371" elapsed="0.001997"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.125351" elapsed="0.002042"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.127427" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:22.127662" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.127709" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.063541" elapsed="0.064191"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.129979" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.128292" elapsed="0.001732"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.128274" elapsed="0.001772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.130625" 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-07-28T01:54:22.130196" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.131173" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.130817" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.131249" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.131429" 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-07-28T01:54:22.127954" elapsed="0.003515"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.131647" 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-07-28T01:54:22.062874" elapsed="0.069229"/>
</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-07-28T01:54:22.008800" elapsed="0.123361"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.001207" elapsed="0.131080"/>
</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-07-28T01:54:22.143925" 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-07-28T01:54:22.144079" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.143777" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.144730" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.144259" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.145280" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.144913" elapsed="0.000396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.145791" 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-07-28T01:54:22.145478" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.146281" 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-07-28T01:54:22.145971" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.147229" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.146472" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.147852" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.147428" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.148518" 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-07-28T01:54:22.148131" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.149122" 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-07-28T01:54:22.148753" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.149686" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.149318" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.150246" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.149919" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.150859" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.150495" 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-07-28T01:54:22.143369" elapsed="0.007589"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.151556" 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-07-28T01:54:22.151108" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.152035" 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-07-28T01:54:22.151789" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.160578" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.160212" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.171065" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.171416" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.171594" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.160805" elapsed="0.010848"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.172339" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.171934" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.176140" 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-07-28T01:54:22.172669" elapsed="0.003598"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.179156" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.176370" elapsed="0.002855"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.176342" elapsed="0.002914"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.183885" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.183949" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.179512" elapsed="0.004469"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.186796" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.184136" elapsed="0.002740"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.184108" elapsed="0.002801"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.186956" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:22.187276" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.187339" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.159896" elapsed="0.027475"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.190733" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.188265" elapsed="0.002532"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.188241" elapsed="0.002587"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.191852" 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-07-28T01:54:22.191033" elapsed="0.000857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.192708" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.192118" elapsed="0.000617"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.192785" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:54:22.193006" 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-07-28T01:54:22.187755" elapsed="0.005277"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.193223" elapsed="0.000446"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.159232" elapsed="0.034503"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.202133" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.201790" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.223816" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.225112" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.225834" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.202289" elapsed="0.023674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.227089" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.226393" elapsed="0.000869"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.233331" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.227715" elapsed="0.006631"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.236514" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.234473" elapsed="0.002092"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.234436" elapsed="0.002152"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.263380" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.263427" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.236765" elapsed="0.026699"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.265357" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.263548" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.263529" elapsed="0.001909"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.265487" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:22.265698" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.265742" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.201391" elapsed="0.064374"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.268020" elapsed="0.000051"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.266346" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.266328" elapsed="0.001798"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.268754" 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-07-28T01:54:22.268279" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.269344" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.268984" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.269420" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.269623" 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-07-28T01:54:22.266003" elapsed="0.003645"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.269845" elapsed="0.000442"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.200703" elapsed="0.069650"/>
</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-07-28T01:54:22.139903" elapsed="0.130510"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.132519" elapsed="0.138071"/>
</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-07-28T01:54:22.282575" 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-07-28T01:54:22.282731" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.282376" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.283414" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.282951" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.284021" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.283692" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.284533" 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-07-28T01:54:22.284200" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.285020" 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-07-28T01:54:22.284709" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.285987" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.285232" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.286608" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.286217" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.287247" 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-07-28T01:54:22.286883" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.287839" 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-07-28T01:54:22.287445" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.288389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.288070" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.288970" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.288606" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.289592" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.289211" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:22.282006" elapsed="0.007688"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.290272" 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-07-28T01:54:22.289844" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.290755" 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-07-28T01:54:22.290469" elapsed="0.000348"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.299117" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.298776" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.306901" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.307174" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.307319" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.299276" elapsed="0.008071"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.307806" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.307533" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.310468" 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-07-28T01:54:22.308032" 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-07-28T01:54:22.312651" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.310635" elapsed="0.002087"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.310616" elapsed="0.002138"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.317532" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.317598" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.312995" elapsed="0.004634"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.320439" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.317781" elapsed="0.002760"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.317753" elapsed="0.002821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.320622" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:22.320942" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.321008" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.298410" elapsed="0.022630"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.324375" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.321871" elapsed="0.002610"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.321846" elapsed="0.002678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.325125" 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-07-28T01:54:22.324698" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.325725" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.325332" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.325803" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:22.325999" 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-07-28T01:54:22.321335" elapsed="0.004690"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.326184" 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-07-28T01:54:22.297818" elapsed="0.028850"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.335363" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.335022" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.356485" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.357601" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.358297" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.335846" elapsed="0.022514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.359450" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.358791" elapsed="0.000863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.366253" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.359988" elapsed="0.008634"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.370513" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.368707" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.368686" elapsed="0.001914"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.398067" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.398119" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.370751" elapsed="0.027391"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.400218" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.398234" elapsed="0.002042"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.398211" elapsed="0.002090"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.400337" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:22.400615" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.400658" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.334407" elapsed="0.066274"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.403148" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.401358" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.401339" elapsed="0.001876"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.403911" 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-07-28T01:54:22.403368" elapsed="0.000570"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.404542" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.404136" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.404620" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.404799" 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-07-28T01:54:22.400971" elapsed="0.003853"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.405018" 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-07-28T01:54:22.333729" elapsed="0.071815"/>
</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-07-28T01:54:22.278467" elapsed="0.127134"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.270789" elapsed="0.134980"/>
</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-07-28T01:54:22.417416" 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-07-28T01:54:22.417589" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.417271" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.418181" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949850&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.417770" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.418665" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.418363" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.419121" 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-07-28T01:54:22.418844" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.419593" 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-07-28T01:54:22.419296" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.420449" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.419769" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.421009" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.420675" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.421590" 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-07-28T01:54:22.421248" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.422114" 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-07-28T01:54:22.421785" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.422636" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.422308" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.423148" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.422830" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.423725" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949850&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.423342" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:22.416940" elapsed="0.006884"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.424355" 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-07-28T01:54:22.423974" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.424794" 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-07-28T01:54:22.424551" 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-07-28T01:54:22.432684" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.432352" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.439069" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.439322" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.439439" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.432840" elapsed="0.006676"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.439968" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.439697" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.442252" 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-07-28T01:54:22.440156" elapsed="0.002198"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.444247" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.442434" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.442410" elapsed="0.001911"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.448598" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.448662" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.444517" elapsed="0.004177"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.451221" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.448798" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.448772" elapsed="0.002560"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.451379" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:22.451693" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.451755" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.432037" elapsed="0.019749"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.454900" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.452570" elapsed="0.002393"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.452546" elapsed="0.002448"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.455999" 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-07-28T01:54:22.455270" elapsed="0.000809"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.456795" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.456318" elapsed="0.000503"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.456871" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:54:22.457091" 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-07-28T01:54:22.452088" elapsed="0.005028"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.457309" elapsed="0.000451"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.431472" elapsed="0.026353"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.466781" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.466399" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.484914" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.486326" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.487234" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.466944" elapsed="0.020422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.488726" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.487906" elapsed="0.000923"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.495418" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.489213" elapsed="0.007878"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.499159" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.497187" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.497161" elapsed="0.002080"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.527004" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.527057" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.499397" elapsed="0.027685"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.529110" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.527175" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.527152" elapsed="0.002078"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.529266" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:22.529497" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.529543" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.465960" elapsed="0.063606"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.532009" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.530247" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.530229" elapsed="0.001847"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.532690" 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-07-28T01:54:22.532230" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.533274" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.532880" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.533349" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.533545" 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-07-28T01:54:22.529859" elapsed="0.003712"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.533731" 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-07-28T01:54:22.465127" elapsed="0.069115"/>
</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-07-28T01:54:22.413659" elapsed="0.120680"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.406186" elapsed="0.128306"/>
</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-07-28T01:54:22.546383" 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-07-28T01:54:22.546601" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.546239" elapsed="0.000392"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.547251" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841710&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.546782" elapsed="0.000498"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.547801" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.547508" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.548328" 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-07-28T01:54:22.548017" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.548833" 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-07-28T01:54:22.548520" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.549878" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.549048" elapsed="0.000861"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.550443" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.550070" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.551105" 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-07-28T01:54:22.550739" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.551762" 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-07-28T01:54:22.551302" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.552320" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.551961" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.552889" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.552566" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.553444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841710&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.553121" 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-07-28T01:54:22.545870" elapsed="0.007688"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.554164" 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-07-28T01:54:22.553744" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.554646" 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-07-28T01:54:22.554345" 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-07-28T01:54:22.563256" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.562907" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.571258" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.571614" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.571765" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.563414" elapsed="0.008377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.572255" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.571959" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.574829" 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-07-28T01:54:22.572537" elapsed="0.002389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.577194" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.574999" elapsed="0.002264"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.574979" elapsed="0.002317"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.582278" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.582342" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.577559" elapsed="0.004815"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.585211" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.582547" elapsed="0.002746"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.582520" elapsed="0.002806"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.585372" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:22.585713" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.585779" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.562554" elapsed="0.023256"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.589199" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.586688" elapsed="0.002556"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.586663" elapsed="0.002639"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.589964" 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-07-28T01:54:22.589472" elapsed="0.000519"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.590563" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.590154" elapsed="0.000469"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.590676" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.590857" 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-07-28T01:54:22.586156" elapsed="0.004725"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.591079" 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-07-28T01:54:22.561938" elapsed="0.029672"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.600015" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.599697" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.620230" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.621345" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.622067" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.600175" elapsed="0.021953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.623156" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.622549" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.629255" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.623675" elapsed="0.007863"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.633971" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.631712" elapsed="0.002308"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.631668" elapsed="0.002376"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.703207" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.703271" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.634189" elapsed="0.069108"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.705421" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.703529" elapsed="0.001971"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.703495" elapsed="0.002031"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.705562" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:22.705780" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.705823" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.599261" elapsed="0.106585"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.708232" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.706515" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.706496" elapsed="0.001803"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.708961" 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-07-28T01:54:22.708508" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.709608" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.709191" elapsed="0.000444"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.709685" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:22.709867" 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-07-28T01:54:22.706138" elapsed="0.003754"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.710089" elapsed="0.000458"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.598619" elapsed="0.111993"/>
</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-07-28T01:54:22.542282" elapsed="0.168387"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.534860" elapsed="0.175932"/>
</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-07-28T01:54:22.722717" 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-07-28T01:54:22.722934" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.722567" elapsed="0.000397"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.723623" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38409a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.723115" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.724128" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.723804" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.724677" 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-07-28T01:54:22.724347" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.725131" 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-07-28T01:54:22.724858" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.726288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.725345" elapsed="0.000974"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.726864" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.726529" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.727575" 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-07-28T01:54:22.727165" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.728147" 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-07-28T01:54:22.727776" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.728767" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.728385" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.729326" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.728969" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.729909" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38409a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.729543" 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-07-28T01:54:22.722185" elapsed="0.007860"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.730637" 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-07-28T01:54:22.730197" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.731101" 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-07-28T01:54:22.730821" 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-07-28T01:54:22.739427" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.739045" elapsed="0.000422"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.746858" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.747179" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.747293" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.739637" elapsed="0.007681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.747905" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.747611" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.751239" 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-07-28T01:54:22.748098" elapsed="0.003251"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.754178" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.751449" elapsed="0.002799"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.751423" elapsed="0.002857"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.759426" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.759574" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.754541" elapsed="0.005071"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.762029" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.759718" elapsed="0.002371"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.759692" elapsed="0.002422"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.762149" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:22.762386" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.762436" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.738729" elapsed="0.023751"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.764855" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.763072" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.763053" elapsed="0.001871"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.765578" 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-07-28T01:54:22.765113" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.766212" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.765810" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.766289" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:22.766490" 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-07-28T01:54:22.762698" 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-07-28T01:54:22.766721" 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-07-28T01:54:22.738085" elapsed="0.029140"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.775932" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.775579" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.790773" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.792115" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.792942" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.776130" elapsed="0.016879"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.794198" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.793494" elapsed="0.000892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.799223" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.794835" elapsed="0.005853"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.803508" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.800797" elapsed="0.002783"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.800769" elapsed="0.002844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.840135" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.840218" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.803867" elapsed="0.036378"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.842691" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.840418" elapsed="0.002375"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.840370" elapsed="0.002455"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.842868" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:22.843154" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.843200" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.775100" elapsed="0.068122"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.845682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.844029" elapsed="0.001699"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.844010" elapsed="0.001740"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.846469" 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-07-28T01:54:22.845919" elapsed="0.000581"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.847065" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.846686" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.847145" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:22.847366" 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-07-28T01:54:22.843620" elapsed="0.003773"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.847593" elapsed="0.000457"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.774376" elapsed="0.073742"/>
</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-07-28T01:54:22.718623" elapsed="0.129559"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.711201" elapsed="0.137124"/>
</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-07-28T01:54:22.859950" 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-07-28T01:54:22.860127" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.859786" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.860835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.860324" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.861384" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.861022" elapsed="0.000395"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.861900" 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-07-28T01:54:22.861612" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.862372" 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-07-28T01:54:22.862091" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.863638" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.862588" elapsed="0.001081"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.864207" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.863848" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.864844" 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-07-28T01:54:22.864493" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.865403" 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-07-28T01:54:22.865056" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.865984" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.865625" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.866545" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.866189" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.867083" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.866756" 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-07-28T01:54:22.859417" elapsed="0.007766"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.867887" 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-07-28T01:54:22.867418" elapsed="0.000535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.868400" 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-07-28T01:54:22.868114" 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-07-28T01:54:22.876896" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.876533" elapsed="0.000391"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.883817" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.884121" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:22.884272" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.877057" elapsed="0.007242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.884813" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.884513" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.887220" 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-07-28T01:54:22.885005" elapsed="0.002295"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.889255" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.887410" elapsed="0.001896"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.887354" elapsed="0.001975"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.892864" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.892910" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:22.889523" elapsed="0.003410"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.895024" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.893008" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.892989" elapsed="0.002154"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.895177" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:22.895424" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:22.895521" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:22.876162" elapsed="0.019385"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.897917" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.896136" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.896118" elapsed="0.001866"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.898632" 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-07-28T01:54:22.898172" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.899485" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.898859" elapsed="0.000660"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.899570" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:22.899794" 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-07-28T01:54:22.895765" elapsed="0.004054"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.899979" elapsed="0.000432"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:22.875518" elapsed="0.025012"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.908880" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:22.908540" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:22.926323" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:22.927566" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:22.928254" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:22.909039" elapsed="0.019275"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.929279" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:22.928706" elapsed="0.000677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.935540" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:22.929738" elapsed="0.006807"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.938534" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.936653" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.936632" elapsed="0.001975"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.965719" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:22.965768" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:22.938816" elapsed="0.026975"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:22.967887" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:22.965882" elapsed="0.002064"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.965861" elapsed="0.002111"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:22.968006" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:22.968209" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:22.968254" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:22.908109" elapsed="0.060167"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:22.970688" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:22.968963" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:22.968943" elapsed="0.001815"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.971495" 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-07-28T01:54:22.970958" elapsed="0.000567"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.972108" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:22.971694" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:22.972187" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:22.972372" 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-07-28T01:54:22.968564" elapsed="0.003834"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:22.972628" 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-07-28T01:54:22.907435" elapsed="0.065671"/>
</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-07-28T01:54:22.855870" elapsed="0.117293"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.848736" elapsed="0.124561"/>
</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-07-28T01:54:22.985105" 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-07-28T01:54:22.985251" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.984956" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:22.985926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ecb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:22.985433" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.986396" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:22.986109" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.986920" 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-07-28T01:54:22.986633" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:22.987390" 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-07-28T01:54:22.987100" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:22.988584" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:22.987625" elapsed="0.001026"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.989153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.988816" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.989782" 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-07-28T01:54:22.989391" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.990351" 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-07-28T01:54:22.989980" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.990884" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:22.990565" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.991479" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:22.991083" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.992007" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ecb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:22.991682" 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-07-28T01:54:22.984582" elapsed="0.007563"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.992698" 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-07-28T01:54:22.992295" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:22.993162" 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-07-28T01:54:22.992920" 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-07-28T01:54:23.001561" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.001236" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.007719" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.007999" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.008110" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.001717" elapsed="0.006418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.008655" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.008370" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.011077" 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-07-28T01:54:23.008888" elapsed="0.002288"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.013163" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.011271" elapsed="0.001941"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.011251" elapsed="0.001984"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.017333" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.017449" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.013413" elapsed="0.004093"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.020529" elapsed="0.000079"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.017619" elapsed="0.003038"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.017586" elapsed="0.003105"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.020738" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:23.021059" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.021121" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.000885" elapsed="0.020268"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.024220" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.022035" elapsed="0.002231"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.022010" elapsed="0.002279"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.024904" 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-07-28T01:54:23.024440" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.025546" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.025134" elapsed="0.000439"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.025624" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.025803" 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-07-28T01:54:23.021516" elapsed="0.004312"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.026026" elapsed="0.000451"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.000246" elapsed="0.026299"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.035157" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.034815" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.052177" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.053483" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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-07-28T01:54:23.054188" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.035337" elapsed="0.018912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.055506" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.054774" elapsed="0.000839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.060594" 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;518000000&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;12000000&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;553000000&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;593000000&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;633000000&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;677000000&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;12000000&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;112000000&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;720000000&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;158000000&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;756000000&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;200000000&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;796000000&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;238000000&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;841000000&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;282000000&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;882000000&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;922000000&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;825000000&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;147000000&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;861000000&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;190000000&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;902000000&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;233000000&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;941000000&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;267000000&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;307000000&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;357000000&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;401000000&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;2&lt;/second&gt;&lt;nanosecond&gt;991000000&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;435000000&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;469000000&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;408000000&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;458000000&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;986000000&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;497000000&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;573000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;536000000&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;576000000&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;617000000&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;660000000&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;653000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;704000000&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;687000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;22000000&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;748000000&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;726000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;63000000&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;786000000&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;775000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;100000000&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;817000000&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;867000000&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;902000000&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;933000000&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;362000000&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;327000000&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-07-28T01:54:23.056011" elapsed="0.005578"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.063562" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.061663" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.061643" elapsed="0.001992"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.088302" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.088350" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.063819" elapsed="0.024555"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.090357" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.088470" elapsed="0.001980"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.088436" elapsed="0.002055"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.090526" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:23.090729" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.090774" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.034378" elapsed="0.056418"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.093130" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.091415" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.091396" elapsed="0.001802"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.093822" 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-07-28T01:54:23.093350" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.094408" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.094012" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.094500" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.094718" 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-07-28T01:54:23.091053" elapsed="0.003691"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.094903" elapsed="0.000466"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.033685" elapsed="0.061750"/>
</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-07-28T01:54:22.981018" elapsed="0.114495"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:22.973649" elapsed="0.122026"/>
</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-07-28T01:54:23.107329" 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-07-28T01:54:23.107525" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.107149" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.108175" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.107709" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.108735" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.108394" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.109225" 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-07-28T01:54:23.108914" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.109732" 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-07-28T01:54:23.109402" elapsed="0.000356"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.112985" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:23.109908" elapsed="0.003108"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.113569" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.113178" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.114186" 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-07-28T01:54:23.113811" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.114766" 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-07-28T01:54:23.114419" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.115381" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.114999" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.115965" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:23.115604" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.116547" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.116198" 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-07-28T01:54:23.106783" elapsed="0.009863"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.117263" 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-07-28T01:54:23.116835" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.117743" 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-07-28T01:54:23.117443" 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-07-28T01:54:23.125907" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.125565" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.131922" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.132206" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.132330" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.126062" elapsed="0.006293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.132870" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.132611" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.135293" 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-07-28T01:54:23.133059" elapsed="0.002335"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.137318" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.135483" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.135447" elapsed="0.001945"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.141496" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.141563" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.137553" elapsed="0.004042"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.144330" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.141700" elapsed="0.002711"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.141674" elapsed="0.002771"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.144513" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:23.144840" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.144904" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.125196" elapsed="0.019740"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.148519" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.145764" elapsed="0.002823"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.145739" elapsed="0.002879"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.149551" 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-07-28T01:54:23.148831" elapsed="0.000759"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.150400" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.149837" elapsed="0.000601"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.150532" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:23.150850" 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-07-28T01:54:23.145231" elapsed="0.005654"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.151110" elapsed="0.000595"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.124600" elapsed="0.027173"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.160069" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.159719" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.173289" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.174564" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.175492" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.160229" elapsed="0.015333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.176688" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.176002" elapsed="0.000871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.183349" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.177200" elapsed="0.007313"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.186512" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.184627" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.184605" elapsed="0.001981"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.210833" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.210881" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.186769" elapsed="0.024135"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.212955" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.211019" elapsed="0.002036"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.210965" elapsed="0.002116"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.213115" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:23.213315" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.213359" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.159308" elapsed="0.054073"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.215786" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.214008" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.213989" elapsed="0.001864"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.216510" 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-07-28T01:54:23.216040" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.217098" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.216702" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.217174" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:23.217394" 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-07-28T01:54:23.213672" elapsed="0.003748"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.217597" elapsed="0.000440"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.158586" elapsed="0.059515"/>
</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-07-28T01:54:23.103258" elapsed="0.114941"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.095955" elapsed="0.122368"/>
</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-07-28T01:54:23.230092" 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-07-28T01:54:23.230373" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.229951" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.231050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.230578" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.231632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.231260" elapsed="0.000398"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.232123" 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-07-28T01:54:23.231845" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.232626" 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-07-28T01:54:23.232336" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.233639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:23.232844" elapsed="0.000826"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.234202" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.233867" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.234868" 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-07-28T01:54:23.234495" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.235509" 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-07-28T01:54:23.235122" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.236061" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.235707" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.236807" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:23.236260" elapsed="0.000632"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.237419" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.237052" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:23.229580" elapsed="0.007956"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.238118" 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-07-28T01:54:23.237690" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.238562" 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-07-28T01:54:23.238301" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.246855" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.246547" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.254174" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.254484" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.254632" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.247052" elapsed="0.007607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.255140" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.254858" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.257671" 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-07-28T01:54:23.255366" elapsed="0.002370"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.259900" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.257807" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.257787" elapsed="0.002215"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.264857" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.264922" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.260198" elapsed="0.004756"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.267775" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.265105" elapsed="0.002748"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.265078" elapsed="0.002808"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.267932" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:23.268253" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.268320" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.246179" elapsed="0.022174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.274032" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.269231" elapsed="0.004856"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.269206" elapsed="0.004910"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.274819" 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-07-28T01:54:23.274343" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.275428" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.275010" elapsed="0.000463"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.275527" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:23.275745" 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-07-28T01:54:23.268718" elapsed="0.007055"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.275931" elapsed="0.000431"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.245581" elapsed="0.030845"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.284988" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.284646" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.301199" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.302359" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.303135" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.285142" elapsed="0.018066"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.304302" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.303645" elapsed="0.000763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.309244" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.304780" elapsed="0.005870"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.313354" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.310779" elapsed="0.002645"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.310750" elapsed="0.002732"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.343418" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.343484" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.313691" elapsed="0.029820"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.345410" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.343597" elapsed="0.001896"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.343577" elapsed="0.001942"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.345553" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:23.345766" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.345810" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.284217" elapsed="0.061616"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.348115" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.346429" elapsed="0.001732"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.346410" elapsed="0.001773"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.348853" 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-07-28T01:54:23.348339" elapsed="0.000541"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.349414" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.349050" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.349509" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:23.349694" 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-07-28T01:54:23.346072" elapsed="0.003647"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.349879" 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-07-28T01:54:23.283522" elapsed="0.066827"/>
</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-07-28T01:54:23.226058" elapsed="0.124349"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.218667" elapsed="0.131884"/>
</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-07-28T01:54:23.361831" 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-07-28T01:54:23.361978" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.361688" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.362590" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.362158" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.363081" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.362772" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.363551" 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-07-28T01:54:23.363256" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.364003" 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-07-28T01:54:23.363730" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.364877" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:23.364181" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.365401" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.365069" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.365989" 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-07-28T01:54:23.365656" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.366538" 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-07-28T01:54:23.366185" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.367075" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:23.366736" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.367625" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:23.367277" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.368152" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.367827" 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-07-28T01:54:23.361329" elapsed="0.006922"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.368817" 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-07-28T01:54:23.368405" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.369247" 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-07-28T01:54:23.369000" 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-07-28T01:54:23.377653" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.377318" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.386036" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.386350" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.386543" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.377822" elapsed="0.008759"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.387261" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.386829" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.390622" 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-07-28T01:54:23.387570" elapsed="0.003182"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.393563" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.390854" elapsed="0.002795"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.390825" elapsed="0.002867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.397429" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.397491" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.393892" elapsed="0.003626"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.399398" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.397607" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.397587" elapsed="0.001908"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.399532" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.399745" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.399790" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.376974" elapsed="0.022839"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.402030" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.400377" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.400359" elapsed="0.001741"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.402698" 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-07-28T01:54:23.402260" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.403287" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.402886" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.403363" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.403614" 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-07-28T01:54:23.400025" elapsed="0.003615"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.403810" 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-07-28T01:54:23.376334" elapsed="0.027946"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.412992" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.412549" elapsed="0.000481"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.431044" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.431543" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.431856" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.413211" elapsed="0.018672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.432314" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.432056" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.434940" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.432534" elapsed="0.003418"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.437845" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.436028" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.436008" elapsed="0.001911"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.467196" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.467245" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.438062" elapsed="0.029206"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.469170" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.467350" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.467331" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.469299" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:23.469534" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.469580" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.411968" elapsed="0.057635"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.471970" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.470215" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.470196" elapsed="0.001842"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.472667" 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-07-28T01:54:23.472212" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.473252" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.472861" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.473329" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.473535" 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-07-28T01:54:23.469850" elapsed="0.003710"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.473732" 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-07-28T01:54:23.411140" elapsed="0.063083"/>
</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-07-28T01:54:23.357910" elapsed="0.116371"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.350844" elapsed="0.123558"/>
</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-07-28T01:54:23.485951" 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-07-28T01:54:23.486100" 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-07-28T01:54:23.485795" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.486755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.486283" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.487271" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.486953" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.487780" 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-07-28T01:54:23.487487" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.488257" 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-07-28T01:54:23.487969" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.489171" 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-07-28T01:54:23.488446" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.489719" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.489359" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.490332" 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-07-28T01:54:23.489982" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.490906" 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-07-28T01:54:23.490546" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.491572" 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-07-28T01:54:23.491197" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.492114" 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-07-28T01:54:23.491776" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.492664" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.492313" 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-07-28T01:54:23.485429" elapsed="0.007336"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.493336" 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-07-28T01:54:23.492927" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.493802" 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-07-28T01:54:23.493541" 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-07-28T01:54:23.502089" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.501764" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.509637" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.509862" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.509971" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.502262" elapsed="0.007734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.510427" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.510174" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.512845" 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-07-28T01:54:23.510657" elapsed="0.002288"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.514843" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.513022" elapsed="0.001872"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.513001" elapsed="0.001916"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.519140" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.519204" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.515107" elapsed="0.004129"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.521843" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.519344" elapsed="0.002580"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.519314" elapsed="0.002644"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.522005" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:23.522346" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.522411" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.501428" elapsed="0.021016"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.525618" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.523282" elapsed="0.002403"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.523257" elapsed="0.002476"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.526566" 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-07-28T01:54:23.525958" elapsed="0.000646"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.527420" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.526852" elapsed="0.000625"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.527544" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.527739" 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-07-28T01:54:23.522784" elapsed="0.004981"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.527921" 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-07-28T01:54:23.500831" elapsed="0.027557"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.536582" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.536247" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.551892" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.553009" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.553753" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.536752" elapsed="0.017069"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.554874" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.554217" elapsed="0.000802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.560163" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.555373" elapsed="0.005751"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.563034" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.561198" elapsed="0.001896"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.561178" elapsed="0.001939"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.591036" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.591084" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.563267" elapsed="0.027841"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.593000" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.591204" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.591184" elapsed="0.001897"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.593114" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:23.593329" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.593375" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.535871" elapsed="0.057527"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.595673" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.593988" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.593969" elapsed="0.001772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.596338" 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-07-28T01:54:23.595905" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.596929" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.596553" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.597007" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.597211" 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-07-28T01:54:23.593637" 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-07-28T01:54:23.597435" elapsed="0.000437"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.535201" elapsed="0.062737"/>
</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-07-28T01:54:23.481908" elapsed="0.116092"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.474703" elapsed="0.123433"/>
</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-07-28T01:54:23.609533" 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-07-28T01:54:23.609676" 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-07-28T01:54:23.609377" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.610283" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.609857" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.610785" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.610484" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.611281" 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-07-28T01:54:23.610992" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.611764" 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-07-28T01:54:23.611476" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.612650" 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-07-28T01:54:23.611940" elapsed="0.000741"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.613184" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.612837" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.613775" 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-07-28T01:54:23.613429" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.614323" 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-07-28T01:54:23.613983" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.614881" 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-07-28T01:54:23.614549" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.615441" 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-07-28T01:54:23.615119" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.615974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.615656" 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-07-28T01:54:23.609030" elapsed="0.007040"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.616615" 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-07-28T01:54:23.616218" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.617031" 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-07-28T01:54:23.616794" 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-07-28T01:54:23.625027" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.624722" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.633595" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.633811" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.633919" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.625186" elapsed="0.008759"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.634362" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.634106" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.636656" 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-07-28T01:54:23.634574" elapsed="0.002177"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.638593" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.636824" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.636804" elapsed="0.001863"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.642594" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.642659" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.638809" elapsed="0.003882"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.645262" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.642794" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.642768" elapsed="0.002604"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.645418" elapsed="0.000059"/>
</return>
<msg time="2026-07-28T01:54:23.645715" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.645775" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.624386" elapsed="0.021420"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.648464" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.646577" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.646552" elapsed="0.001983"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.649077" 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-07-28T01:54:23.648680" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.649631" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.649263" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.649706" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.649885" 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-07-28T01:54:23.646098" elapsed="0.003812"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.650067" 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-07-28T01:54:23.623826" elapsed="0.026712"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.658445" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.658148" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.672528" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.673640" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.674314" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.658617" elapsed="0.015779"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.675439" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.674807" elapsed="0.000789"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.680710" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.675919" elapsed="0.006178"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.684784" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.682200" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.682173" elapsed="0.002731"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.714687" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.714736" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.685104" elapsed="0.029655"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.716622" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.714842" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.714822" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.716737" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:23.716938" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.716983" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.657773" elapsed="0.059232"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.719182" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.717583" elapsed="0.001644"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.717565" elapsed="0.001684"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.719840" 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-07-28T01:54:23.719400" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.720419" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.720050" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.720520" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.720723" 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-07-28T01:54:23.717225" elapsed="0.003525"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.720924" 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-07-28T01:54:23.657147" elapsed="0.064238"/>
</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-07-28T01:54:23.605618" elapsed="0.115854"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.598433" elapsed="0.123166"/>
</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-07-28T01:54:23.732776" 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-07-28T01:54:23.732939" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.732631" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.733559" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329f30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.733125" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.734041" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.733755" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.734537" 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-07-28T01:54:23.734235" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.735040" 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-07-28T01:54:23.734718" elapsed="0.000349"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.735859" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.735221" elapsed="0.000668"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.736407" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.736059" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.737011" 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-07-28T01:54:23.736664" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.737575" 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-07-28T01:54:23.737213" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.738109" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.737782" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.738684" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.738322" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.739246" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329f30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.738904" 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-07-28T01:54:23.732281" elapsed="0.007067"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.739926" 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-07-28T01:54:23.739520" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.740374" 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-07-28T01:54:23.740127" 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-07-28T01:54:23.748703" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.748353" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.755603" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.755824" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.755931" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.748867" elapsed="0.007089"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.756405" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.756133" elapsed="0.000335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.758757" 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-07-28T01:54:23.756616" elapsed="0.002275"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.761328" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.758968" elapsed="0.002430"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.758947" elapsed="0.002486"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.765770" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.765834" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.761654" elapsed="0.004211"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.768369" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.765968" elapsed="0.002477"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.765942" elapsed="0.002557"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.768546" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:23.768819" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.768879" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.748021" elapsed="0.020889"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.771871" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.769684" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.769660" elapsed="0.002279"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.772502" 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-07-28T01:54:23.772085" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.773063" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.772695" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.773139" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:23.773316" 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-07-28T01:54:23.769201" elapsed="0.004140"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.773518" 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-07-28T01:54:23.747382" elapsed="0.026585"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.781997" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.781699" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.795087" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.796167" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.796852" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.782154" elapsed="0.014758"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.797893" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.797272" elapsed="0.000723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.803616" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.798313" elapsed="0.006717"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.807754" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.805135" elapsed="0.002703"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.805108" elapsed="0.002762"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.838106" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.838164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.808068" elapsed="0.030119"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.840129" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.838274" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.838253" elapsed="0.001967"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.840254" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:23.840484" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.840538" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.781301" elapsed="0.059261"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.842831" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.841148" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.841129" elapsed="0.001779"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.843500" 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-07-28T01:54:23.843057" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.844075" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.843706" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.844162" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:23.844349" 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-07-28T01:54:23.840789" elapsed="0.003585"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.844560" 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-07-28T01:54:23.780685" elapsed="0.064360"/>
</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-07-28T01:54:23.728927" elapsed="0.116184"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.721884" elapsed="0.123351"/>
</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-07-28T01:54:23.856673" 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-07-28T01:54:23.856816" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.856531" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.857432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f38d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.857017" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.857929" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.857638" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.858408" 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-07-28T01:54:23.858116" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.858945" 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-07-28T01:54:23.858623" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.859774" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.859136" elapsed="0.000668"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.860314" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.859973" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.860966" 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-07-28T01:54:23.860621" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.861524" 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-07-28T01:54:23.861171" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.862063" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.861738" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.862618" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.862269" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.863181" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f38d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.862835" 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-07-28T01:54:23.856169" elapsed="0.007109"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.863858" 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-07-28T01:54:23.863438" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.864299" 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-07-28T01:54:23.864048" 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-07-28T01:54:23.872705" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.872345" elapsed="0.000388"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.878843" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.879049" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:23.879173" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.872876" elapsed="0.006323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.879762" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.879358" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.883031" 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-07-28T01:54:23.880048" elapsed="0.003104"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.885790" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.883253" elapsed="0.002606"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.883225" elapsed="0.002665"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.889888" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.889952" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:23.886085" 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-07-28T01:54:23.892326" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.890100" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.890073" elapsed="0.002333"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.892438" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:23.892681" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:23.892725" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.872009" elapsed="0.020739"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.894968" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.893315" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.893297" elapsed="0.001742"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.895630" 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-07-28T01:54:23.895184" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.896207" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.895830" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.896286" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.896505" 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-07-28T01:54:23.892962" elapsed="0.003570"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.896699" 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-07-28T01:54:23.871347" elapsed="0.025829"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.905538" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.905197" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:23.921690" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:23.922843" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:23.923593" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.905697" elapsed="0.017959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.924667" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:23.924059" elapsed="0.000713"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.930653" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:23.925116" elapsed="0.007154"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.934159" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.932346" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.932326" elapsed="0.001908"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.962283" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:23.962342" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:23.934493" elapsed="0.027875"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:23.964297" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:23.962478" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.962431" elapsed="0.001959"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:23.964423" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:23.964643" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:23.964687" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:23.904794" elapsed="0.059916"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:23.966960" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:23.965286" elapsed="0.001718"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:23.965267" elapsed="0.001759"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.967614" 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-07-28T01:54:23.967174" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.968206" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:23.967822" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:23.968283" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:23.968488" 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-07-28T01:54:23.964939" elapsed="0.003575"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:23.968676" 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-07-28T01:54:23.904116" elapsed="0.065049"/>
</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-07-28T01:54:23.852685" elapsed="0.116537"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.845547" elapsed="0.123806"/>
</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-07-28T01:54:23.981214" 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-07-28T01:54:23.981417" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.981011" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:23.982227" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:23.981709" elapsed="0.000553"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.982847" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:23.982472" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.983352" 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-07-28T01:54:23.983062" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:23.983901" 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-07-28T01:54:23.983593" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:23.985079" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.984080" elapsed="0.001039"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.985721" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.985334" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.986330" 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-07-28T01:54:23.985986" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.986917" 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-07-28T01:54:23.986557" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.987446" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:23.987115" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.987995" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:23.987663" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.988557" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:23.988196" 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-07-28T01:54:23.980584" elapsed="0.008079"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.989227" 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-07-28T01:54:23.988820" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:23.989705" 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-07-28T01:54:23.989433" 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-07-28T01:54:23.997894" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:23.997572" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.004360" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.004658" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.004781" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:23.998057" elapsed="0.006751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.005256" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.004972" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.007667" 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-07-28T01:54:24.005465" elapsed="0.002305"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.009761" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.007857" elapsed="0.001959"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.007831" elapsed="0.002011"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.013444" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.013555" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.010007" elapsed="0.003582"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.016210" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.013696" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.013669" elapsed="0.002654"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.016369" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:24.016694" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.016769" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:23.997220" elapsed="0.019581"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.019961" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.017632" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.017606" elapsed="0.002463"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.020919" 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-07-28T01:54:24.020291" elapsed="0.000666"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.021749" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.021200" elapsed="0.000585"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.021879" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:24.022138" 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-07-28T01:54:24.017118" elapsed="0.005057"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.022428" elapsed="0.000664"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:23.996627" elapsed="0.026570"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.031278" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.030978" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.050025" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.051177" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.051897" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.031437" elapsed="0.020522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.052993" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.052326" elapsed="0.000774"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.058935" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.053426" elapsed="0.006898"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.062187" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.060400" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.060380" elapsed="0.001879"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.090032" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.090080" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.062404" elapsed="0.027700"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.091998" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.090188" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.090168" elapsed="0.001911"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.092111" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:24.092313" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.092367" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.030585" elapsed="0.061806"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.094575" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.092962" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.092944" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.095318" 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-07-28T01:54:24.094847" elapsed="0.000510"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.095960" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.095564" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.096038" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.096233" 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-07-28T01:54:24.092628" elapsed="0.003631"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.096448" elapsed="0.000440"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:24.029952" elapsed="0.067002"/>
</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-07-28T01:54:23.976946" elapsed="0.120066"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:23.969663" elapsed="0.127481"/>
</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-07-28T01:54:24.108728" 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-07-28T01:54:24.108890" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.108569" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.109564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.109094" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.110071" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.109760" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.110578" 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-07-28T01:54:24.110255" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.111093" 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-07-28T01:54:24.110788" elapsed="0.000332"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.112049" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.111275" elapsed="0.000805"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.112631" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.112254" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.113243" 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-07-28T01:54:24.112895" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.113838" 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-07-28T01:54:24.113470" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.114406" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.114070" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.115019" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.114647" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.115588" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.115243" 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-07-28T01:54:24.108189" elapsed="0.007511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.116276" 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-07-28T01:54:24.115874" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.116754" 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-07-28T01:54:24.116502" 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-07-28T01:54:24.124948" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.124630" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.131653" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.131893" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.132008" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.125109" elapsed="0.006927"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.132472" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.132198" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.134811" 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-07-28T01:54:24.132698" elapsed="0.002176"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.136712" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.134945" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.134926" elapsed="0.001858"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.140389" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.140473" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.136925" elapsed="0.003582"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.143069" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.140614" elapsed="0.002534"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.140588" elapsed="0.002593"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.143240" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:24.143546" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.143608" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.124294" elapsed="0.019347"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.146954" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.144415" elapsed="0.002603"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.144389" elapsed="0.002659"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.147860" 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-07-28T01:54:24.147259" elapsed="0.000640"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.148726" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.148130" elapsed="0.000638"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.148848" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:24.149106" 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-07-28T01:54:24.143939" elapsed="0.005202"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.149381" elapsed="0.000586"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:24.123715" elapsed="0.026342"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.158558" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.158225" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.179568" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.180805" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.181631" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.158736" elapsed="0.022980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.183113" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.182232" elapsed="0.000990"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.187176" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.183587" elapsed="0.005129"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.191478" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.188859" elapsed="0.002719"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.188820" elapsed="0.002804"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.286641" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.286723" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.191865" elapsed="0.094884"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.288905" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.286907" elapsed="0.002063"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.286865" elapsed="0.002136"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.289041" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:24.289278" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.289334" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.157848" elapsed="0.131511"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.291771" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.290066" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.290047" elapsed="0.001793"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.292546" 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-07-28T01:54:24.292002" elapsed="0.000572"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.293124" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.292753" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.293199" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.293394" 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-07-28T01:54:24.289662" 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-07-28T01:54:24.293611" elapsed="0.000503"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:24.157166" elapsed="0.137033"/>
</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-07-28T01:54:24.104703" elapsed="0.189563"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.097500" elapsed="0.196916"/>
</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-07-28T01:54:24.305750" 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-07-28T01:54:24.305919" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.305600" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.306623" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4810&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.306116" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.307123" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.306815" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.307615" 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-07-28T01:54:24.307307" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.308077" 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-07-28T01:54:24.307804" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.309156" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.308266" elapsed="0.000922"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.309718" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.309349" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.310326" 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-07-28T01:54:24.309988" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.310899" 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-07-28T01:54:24.310538" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.311432" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.311105" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.311983" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.311647" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.312542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4810&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.312179" 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-07-28T01:54:24.305231" elapsed="0.007411"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.313211" 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-07-28T01:54:24.312805" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.313679" 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-07-28T01:54:24.313393" 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-07-28T01:54:24.321708" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.321320" elapsed="0.000433"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.329111" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.329541" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.329706" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.321909" elapsed="0.007835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.330365" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.329987" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.333818" 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-07-28T01:54:24.330746" elapsed="0.003164"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.336627" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.334016" elapsed="0.002686"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.333987" elapsed="0.002747"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.341534" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.341601" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.336942" elapsed="0.004691"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.344417" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.341742" elapsed="0.002779"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.341715" elapsed="0.002840"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.344602" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:24.344894" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.344956" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.320951" elapsed="0.024036"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.347932" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.345799" elapsed="0.002179"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.345774" elapsed="0.002226"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.348606" 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-07-28T01:54:24.348150" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.349161" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.348805" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.349241" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:24.349420" 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-07-28T01:54:24.345298" elapsed="0.004147"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.349623" 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-07-28T01:54:24.320361" elapsed="0.029724"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.357982" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.357676" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.372544" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.373628" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.374279" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.358138" elapsed="0.016201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.375536" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.374773" elapsed="0.000870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.381527" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.375971" elapsed="0.007248"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.385065" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.383296" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.383276" elapsed="0.001860"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.412116" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.412165" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.385282" elapsed="0.026906"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.414018" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.412268" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.412249" elapsed="0.001849"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.414131" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.414330" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.414374" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.357279" elapsed="0.057118"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.419656" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.415814" elapsed="0.003947"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.415771" elapsed="0.004041"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.421126" 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-07-28T01:54:24.420162" elapsed="0.001026"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.422392" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.421589" elapsed="0.000862"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.422619" elapsed="0.000068"/>
</return>
<msg time="2026-07-28T01:54:24.423051" 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-07-28T01:54:24.414944" elapsed="0.008165"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.423608" elapsed="0.000935"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:24.356655" elapsed="0.068036"/>
</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-07-28T01:54:24.301813" elapsed="0.123007"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.294699" elapsed="0.130384"/>
</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-07-28T01:54:24.437876" 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-07-28T01:54:24.438044" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.437723" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.438736" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.438229" elapsed="0.000537"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.439231" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.438925" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.439732" 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-07-28T01:54:24.439411" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.440205" 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-07-28T01:54:24.439913" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.441348" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.440384" elapsed="0.000997"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.441938" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.441567" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.442562" 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-07-28T01:54:24.442184" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.443201" 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-07-28T01:54:24.442774" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.443792" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.443406" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.444348" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.444004" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.444913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.444567" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:24.437334" elapsed="0.007681"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.445660" 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-07-28T01:54:24.445181" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.446136" 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-07-28T01:54:24.445880" 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-07-28T01:54:24.454254" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.453870" elapsed="0.000421"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.461130" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.461382" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.461562" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.454521" elapsed="0.007079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.462219" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.461827" elapsed="0.000507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.465590" 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-07-28T01:54:24.462597" elapsed="0.003081"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.468318" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.465780" elapsed="0.002610"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.465752" elapsed="0.002669"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.472744" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.472791" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.468639" elapsed="0.004175"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.474838" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.472891" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.472872" elapsed="0.002046"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.474952" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.475153" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.475197" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.453534" elapsed="0.021685"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.477425" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.475813" elapsed="0.001703"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.475795" elapsed="0.001760"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.478256" 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-07-28T01:54:24.477725" elapsed="0.000569"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.478894" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.478525" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.478972" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:24.479158" 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-07-28T01:54:24.475475" elapsed="0.003708"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.479345" 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-07-28T01:54:24.452931" elapsed="0.026912"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.487909" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.487589" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.502625" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.503748" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.504422" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.488069" elapsed="0.016446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.505665" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.504908" elapsed="0.000864"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.511849" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.506149" elapsed="0.007064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.515922" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.513325" elapsed="0.002668"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.513297" elapsed="0.002728"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.549917" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.549965" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.516237" elapsed="0.033752"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.551853" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.550074" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.550054" elapsed="0.001881"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.551969" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:24.552170" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.552214" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.487089" elapsed="0.065148"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.554495" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.552818" elapsed="0.001729"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.552800" elapsed="0.001769"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.555163" 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-07-28T01:54:24.554722" elapsed="0.000479"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.555757" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.555372" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.555835" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.556018" 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-07-28T01:54:24.552477" elapsed="0.003568"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.556221" 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-07-28T01:54:24.486416" elapsed="0.070287"/>
</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-07-28T01:54:24.433793" elapsed="0.122968"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.425522" elapsed="0.131366"/>
</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-07-28T01:54:24.567961" 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-07-28T01:54:24.568119" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.567815" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.568739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e47c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.568312" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.569227" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.568933" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.569716" 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-07-28T01:54:24.569419" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.570163" 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-07-28T01:54:24.569893" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.570959" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.570348" elapsed="0.000643"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.571516" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.571153" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.572096" 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-07-28T01:54:24.571766" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.572663" 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-07-28T01:54:24.572294" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.573182" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.572862" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.573737" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.573392" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.574263" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e47c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.573938" 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-07-28T01:54:24.567476" elapsed="0.006887"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.574961" 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-07-28T01:54:24.574566" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.575393" 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-07-28T01:54:24.575146" 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-07-28T01:54:24.583439" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.583097" elapsed="0.000385"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.590551" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.590766" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.590876" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.583629" elapsed="0.007272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.591322" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.591064" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.594772" 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-07-28T01:54:24.591591" elapsed="0.003269"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.597536" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.595009" elapsed="0.002600"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.594979" elapsed="0.002661"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.601786" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.601853" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.597889" elapsed="0.004006"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.604231" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.602005" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.601977" elapsed="0.002336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.604346" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:24.604564" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.604608" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.582778" elapsed="0.021853"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.606820" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.605187" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.605168" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.607481" 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-07-28T01:54:24.607056" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.608114" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.607725" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.608193" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:24.608375" 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-07-28T01:54:24.604845" elapsed="0.003555"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.608581" 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-07-28T01:54:24.582153" elapsed="0.026895"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.617127" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.616822" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.634857" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.635962" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.636679" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.617293" elapsed="0.019447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.637730" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.637102" elapsed="0.000733"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.643612" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.638161" elapsed="0.006798"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.647749" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.645066" elapsed="0.002785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.645037" elapsed="0.002847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.679973" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.680021" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.648090" elapsed="0.031954"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.681938" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.680130" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.680110" elapsed="0.001936"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.682091" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:24.682308" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.682352" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.616423" elapsed="0.065952"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.684648" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.683014" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.682995" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.685278" 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-07-28T01:54:24.684865" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.685837" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.685482" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.685912" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:24.686089" 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-07-28T01:54:24.682656" 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-07-28T01:54:24.686269" 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-07-28T01:54:24.615778" elapsed="0.070982"/>
</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-07-28T01:54:24.564131" elapsed="0.122689"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.557192" elapsed="0.129755"/>
</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-07-28T01:54:24.698100" 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-07-28T01:54:24.698251" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.697959" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.698960" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.698501" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.699426" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.699144" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.699890" 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-07-28T01:54:24.699620" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.700334" 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-07-28T01:54:24.700066" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.701274" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.700525" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.701829" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.701494" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.702491" 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-07-28T01:54:24.702073" elapsed="0.000469"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.703037" 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-07-28T01:54:24.702701" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.703562" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:24.703231" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.704076" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:24.703760" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.706745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.704270" elapsed="0.002521"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:24.697622" elapsed="0.009227"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.707393" 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-07-28T01:54:24.707002" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.707832" 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-07-28T01:54:24.707590" 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-07-28T01:54:24.716302" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.715992" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.723279" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.723568" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.723694" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.716475" elapsed="0.007245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.724185" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.723922" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.726551" 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-07-28T01:54:24.724376" elapsed="0.002237"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.728430" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.726689" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.726667" elapsed="0.001859"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.731918" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.731964" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.728667" elapsed="0.003321"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.733746" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.732063" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.732044" elapsed="0.001780"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.733857" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:24.734057" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.734100" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.715669" elapsed="0.018454"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.736487" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.734744" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.734726" elapsed="0.001830"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.737104" 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-07-28T01:54:24.736704" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.737667" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.737293" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.737743" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:24.737920" 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-07-28T01:54:24.734332" 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-07-28T01:54:24.738100" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:24.715056" elapsed="0.023538"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.746534" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.746199" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.760217" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.760705" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.760998" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.746694" elapsed="0.014331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.761496" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.761186" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.764020" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.761687" elapsed="0.003268"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.766836" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.765027" elapsed="0.001858"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.765008" elapsed="0.001900"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.796471" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.796520" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.767048" elapsed="0.029496"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.798495" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.796626" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.796605" elapsed="0.001972"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.798611" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:24.798816" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.798860" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.745821" elapsed="0.053062"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.801064" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.799440" elapsed="0.001672"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.799422" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.801711" 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-07-28T01:54:24.801283" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.802258" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.801902" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.802351" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:24.802549" 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-07-28T01:54:24.799100" 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-07-28T01:54:24.802736" 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-07-28T01:54:24.745147" elapsed="0.058043"/>
</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-07-28T01:54:24.694219" elapsed="0.109028"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.687246" elapsed="0.116126"/>
</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-07-28T01:54:24.814618" 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-07-28T01:54:24.814764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:24.814469" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.815357" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069ac50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.814944" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.815842" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.815553" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.816294" 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-07-28T01:54:24.816019" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.816757" 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-07-28T01:54:24.816484" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.817589" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:24.816935" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.818113" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.817779" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.818746" 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-07-28T01:54:24.818393" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.819269" 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-07-28T01:54:24.818941" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.819795" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:24.819477" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.820311" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:24.819991" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.820849" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069ac50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.820526" 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-07-28T01:54:24.814112" elapsed="0.006834"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.821496" 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-07-28T01:54:24.821097" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.821916" 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-07-28T01:54:24.821677" 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-07-28T01:54:24.830038" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.829729" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.836506" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.836719" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.836825" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.830197" elapsed="0.006656"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.837270" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.837013" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.839687" 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-07-28T01:54:24.837471" elapsed="0.002308"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.841618" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.839853" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.839833" elapsed="0.001858"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.845316" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.845381" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.841831" elapsed="0.003583"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.847952" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.845543" elapsed="0.002486"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.845512" elapsed="0.002550"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.848109" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:24.848388" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.848449" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.829392" elapsed="0.019110"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.851550" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.849269" elapsed="0.002338"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.849245" elapsed="0.002389"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.852185" 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-07-28T01:54:24.851782" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.852748" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.852374" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.852827" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:24.853005" 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-07-28T01:54:24.848802" elapsed="0.004228"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:24.853189" 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-07-28T01:54:24.828821" elapsed="0.024838"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.863819" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.863510" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.878181" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.878977" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.879399" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.863976" elapsed="0.015461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.880047" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.879692" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.883746" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:24.880317" elapsed="0.004770"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.887710" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.885195" elapsed="0.002584"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.885166" elapsed="0.002645"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.917342" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.917390" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:24.888017" elapsed="0.029396"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.919259" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.917515" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.917491" elapsed="0.001849"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.919373" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:24.919592" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:24.919637" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.863116" elapsed="0.056543"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.921814" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.920218" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.920200" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.922471" 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-07-28T01:54:24.922031" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.923015" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.922663" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.923090" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:24.923269" 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-07-28T01:54:24.919880" 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-07-28T01:54:24.923467" 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-07-28T01:54:24.862488" elapsed="0.061440"/>
</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-07-28T01:54:24.810764" elapsed="0.113222"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.803681" elapsed="0.120433"/>
</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-07-28T01:54:24.935291" 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-07-28T01:54:24.935444" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:24.934993" elapsed="0.000495"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:24.936076" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329c10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:24.935640" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.936558" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:24.936256" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.937004" 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-07-28T01:54:24.936734" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:24.937445" 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-07-28T01:54:24.937177" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.938244" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:24.937640" elapsed="0.000671"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.938826" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.938490" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.939395" 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-07-28T01:54:24.939067" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.939949" 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-07-28T01:54:24.939620" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.940467" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:24.940140" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.940987" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:24.940666" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.941523" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329c10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:24.941184" 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-07-28T01:54:24.934659" elapsed="0.006964"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.942156" 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-07-28T01:54:24.941772" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.942613" 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-07-28T01:54:24.942352" 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-07-28T01:54:24.950587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.950238" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.958033" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.958239" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:24.958388" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.950745" elapsed="0.007669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.959051" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:24.958688" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.962305" 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-07-28T01:54:24.959315" elapsed="0.003115"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.965089" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.962552" elapsed="0.002609"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.962524" elapsed="0.002670"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:24.969532" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:24.969602" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:24.965390" elapsed="0.004245"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:24.971750" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:24.969741" elapsed="0.002065"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.969714" elapsed="0.002116"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:24.971863" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:24.972063" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:24.972107" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:24.949920" elapsed="0.022209"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:24.974313" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:24.972698" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:24.972680" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.974953" 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-07-28T01:54:24.974548" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.975514" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:24.975142" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:24.975589" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:24.975768" 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-07-28T01:54:24.972343" 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-07-28T01:54:24.975952" 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-07-28T01:54:24.949319" elapsed="0.027087"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:24.984487" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:24.984170" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:24.998477" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:24.999124" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:24.999744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:24.984646" elapsed="0.015137"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.000370" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.000007" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.004010" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.000670" elapsed="0.004675"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.007970" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.005447" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.005420" elapsed="0.002651"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.042578" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.042628" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.008272" elapsed="0.034379"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.044463" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.042733" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.042713" elapsed="0.001838"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.044584" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.044785" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.044829" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:24.983793" elapsed="0.061058"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.047023" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.045409" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.045391" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.047669" 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-07-28T01:54:25.047236" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.048212" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.047858" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.048287" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.048485" 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-07-28T01:54:25.045071" 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-07-28T01:54:25.048669" 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-07-28T01:54:24.983152" elapsed="0.065974"/>
</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-07-28T01:54:24.931285" elapsed="0.117899"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:24.924401" elapsed="0.124904"/>
</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-07-28T01:54:25.060266" 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-07-28T01:54:25.060427" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:25.060126" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.061030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b20993f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.060623" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.061511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.061211" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.061959" 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-07-28T01:54:25.061687" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.062435" 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-07-28T01:54:25.062133" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.063433" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.062627" elapsed="0.000855"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.063980" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.063645" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.064580" 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-07-28T01:54:25.064232" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.065155" 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-07-28T01:54:25.064805" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.065711" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:25.065350" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.066288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.065911" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.066856" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b20993f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.066517" 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-07-28T01:54:25.059792" elapsed="0.007162"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.067511" 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-07-28T01:54:25.067105" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.067941" 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-07-28T01:54:25.067694" 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-07-28T01:54:25.076041" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.075731" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.082932" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.083145" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.083256" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.076198" elapsed="0.007084"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.083725" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.083442" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.085999" 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-07-28T01:54:25.083916" elapsed="0.002173"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.088633" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.086160" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.086141" elapsed="0.002596"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.092981" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.093051" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.088950" elapsed="0.004134"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.095784" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.093189" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.093162" elapsed="0.002734"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.095944" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:25.096218" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.096279" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.075392" elapsed="0.020921"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.099182" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.097114" elapsed="0.002116"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.097089" elapsed="0.002162"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.099822" 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-07-28T01:54:25.099398" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.100370" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.100014" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.100446" elapsed="0.000048"/>
</return>
<msg time="2026-07-28T01:54:25.100652" 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-07-28T01:54:25.096645" elapsed="0.004033"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.100836" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.074818" elapsed="0.026474"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.109489" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.109171" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.123061" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.124143" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.124833" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.109648" elapsed="0.015245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.125977" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.125256" elapsed="0.000827"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.131292" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.126485" elapsed="0.005764"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.134102" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.132322" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.132303" elapsed="0.001882"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.165829" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.165880" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.134332" elapsed="0.031572"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.167794" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.165992" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.165971" elapsed="0.001918"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.167924" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:25.168133" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.168178" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.108793" elapsed="0.059407"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.170422" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.168798" elapsed="0.001683"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.168780" elapsed="0.001723"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.171086" 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-07-28T01:54:25.170658" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.171658" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.171281" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.171734" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.171914" 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-07-28T01:54:25.168432" 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-07-28T01:54:25.172101" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.108123" elapsed="0.064456"/>
</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-07-28T01:54:25.056501" elapsed="0.116135"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.049611" elapsed="0.123150"/>
</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-07-28T01:54:25.183737" 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-07-28T01:54:25.183889" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.183596" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.184512" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.184074" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.184982" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.184696" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.185431" 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-07-28T01:54:25.185159" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.185902" 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-07-28T01:54:25.185630" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.186822" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:25.186084" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.187349" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.187015" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.187951" 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-07-28T01:54:25.187620" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.188499" 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-07-28T01:54:25.188148" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.189020" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.188698" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.189560" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:25.189219" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.190085" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.189758" 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-07-28T01:54:25.183243" elapsed="0.006967"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.190771" 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-07-28T01:54:25.190365" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.191475" 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-07-28T01:54:25.190956" elapsed="0.000592"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.199555" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.199224" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.206436" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.206775" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.206928" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.199716" elapsed="0.007248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.207584" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.207193" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.210891" 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-07-28T01:54:25.207855" elapsed="0.003176"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.213632" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.211133" elapsed="0.002569"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.211106" elapsed="0.002627"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.218175" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.218222" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.213928" elapsed="0.004317"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.220038" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.218322" elapsed="0.001772"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.218302" elapsed="0.001816"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.220150" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:25.220348" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.220391" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.198904" elapsed="0.021509"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.222850" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.221114" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.221096" elapsed="0.001824"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.223604" 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-07-28T01:54:25.223068" elapsed="0.000563"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.224160" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.223800" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.224237" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.224419" 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-07-28T01:54:25.220647" elapsed="0.003798"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.224620" 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-07-28T01:54:25.198315" elapsed="0.026763"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.233254" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.232948" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.246753" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.247987" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.248683" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.233412" elapsed="0.015333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.249742" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.249112" elapsed="0.000743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.255032" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.250217" elapsed="0.005914"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.257976" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.256209" elapsed="0.001834"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.256189" elapsed="0.001888"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.293636" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.293685" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.258278" elapsed="0.035431"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.295703" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.293804" elapsed="0.001958"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.293783" elapsed="0.002003"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.295820" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:25.296036" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.296080" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.232567" elapsed="0.063535"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.298367" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.296699" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.296681" elapsed="0.001754"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.299038" 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-07-28T01:54:25.298610" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.299613" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.299238" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.299700" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.299879" 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-07-28T01:54:25.296326" elapsed="0.003578"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.300060" 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-07-28T01:54:25.231926" elapsed="0.068619"/>
</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-07-28T01:54:25.179965" elapsed="0.120637"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.173052" elapsed="0.127684"/>
</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-07-28T01:54:25.312060" 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-07-28T01:54:25.312210" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:25.311870" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.312817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.312392" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.313295" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.312999" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.313761" 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-07-28T01:54:25.313488" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.314302" 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-07-28T01:54:25.313981" elapsed="0.000348"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.315115" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.314497" elapsed="0.000648"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.315661" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.315303" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.316241" 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-07-28T01:54:25.315901" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.316802" 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-07-28T01:54:25.316439" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.317332" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:25.317015" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.317867" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:25.317548" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.318439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.318065" elapsed="0.000434"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:25.311536" elapsed="0.007019"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.319090" 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-07-28T01:54:25.318706" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.319596" 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-07-28T01:54:25.319313" 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-07-28T01:54:25.328377" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.328052" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.335612" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.335848" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.335956" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.328562" elapsed="0.007419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.336410" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.336143" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.338964" 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-07-28T01:54:25.336623" elapsed="0.002527"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.341793" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.339256" elapsed="0.002606"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.339229" elapsed="0.002666"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.346113" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.346179" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.342128" elapsed="0.004084"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.348785" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.346317" elapsed="0.002547"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.346291" elapsed="0.002606"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.348943" elapsed="0.000056"/>
</return>
<msg time="2026-07-28T01:54:25.349275" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.349340" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.327719" elapsed="0.021653"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.352074" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.350286" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.350255" elapsed="0.001889"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.352720" 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-07-28T01:54:25.352294" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.353263" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.352909" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.353337" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.353548" 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-07-28T01:54:25.349709" 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-07-28T01:54:25.353742" 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-07-28T01:54:25.327098" elapsed="0.027119"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.364223" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.363804" elapsed="0.000457"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.379112" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.380221" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.380940" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.364445" elapsed="0.016560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.381985" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.381367" elapsed="0.000758"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.387591" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.382449" elapsed="0.006476"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.391530" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.389028" elapsed="0.002570"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.389002" elapsed="0.002628"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.420080" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.420130" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.391829" elapsed="0.028323"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.421990" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.420239" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.420218" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.422134" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:25.422337" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.422381" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.363245" elapsed="0.059158"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.425504" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.423268" elapsed="0.002301"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.423242" elapsed="0.002358"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.426433" 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-07-28T01:54:25.425812" elapsed="0.000691"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.427125" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.426705" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.427314" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:25.427530" 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-07-28T01:54:25.422731" elapsed="0.004825"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.427715" 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-07-28T01:54:25.362320" elapsed="0.065853"/>
</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-07-28T01:54:25.308192" elapsed="0.120039"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.301029" elapsed="0.127326"/>
</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-07-28T01:54:25.439411" 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-07-28T01:54:25.439574" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.439271" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.440175" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372be20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.439754" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.440648" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.440353" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.441087" 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-07-28T01:54:25.440822" elapsed="0.000290"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.441540" 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-07-28T01:54:25.441258" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.442632" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.441714" elapsed="0.000948"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.443145" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.442818" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.443725" 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-07-28T01:54:25.443383" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.444242" 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-07-28T01:54:25.443919" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.444759" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.444433" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.445269" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.444954" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.445800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372be20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.445478" 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-07-28T01:54:25.438938" elapsed="0.006959"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.446467" 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-07-28T01:54:25.446067" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.447055" 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-07-28T01:54:25.446652" 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-07-28T01:54:25.454959" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.454651" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.461793" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.462090" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.462203" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.455116" elapsed="0.007112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.462777" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.462450" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.465144" 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-07-28T01:54:25.462982" elapsed="0.002225"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.467072" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.465277" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.465258" elapsed="0.001886"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.470667" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.470735" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.467296" elapsed="0.003471"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.473349" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.470886" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.470859" elapsed="0.002618"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.473539" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:25.473811" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.473872" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.454320" elapsed="0.019583"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.477256" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.474716" elapsed="0.002604"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.474692" elapsed="0.002658"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.478176" 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-07-28T01:54:25.477583" elapsed="0.000631"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.478966" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.478471" elapsed="0.000531"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.479071" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:25.479373" 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-07-28T01:54:25.474219" elapsed="0.005204"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.479702" elapsed="0.000547"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.453737" elapsed="0.026616"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.488998" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.488700" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.501494" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.502646" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.503330" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.489154" elapsed="0.014237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.504404" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.503816" elapsed="0.000723"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.510370" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.504881" elapsed="0.006656"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.513374" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.511612" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.511593" elapsed="0.001905"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.545168" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.545226" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.513649" elapsed="0.031602"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.547131" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.545333" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.545313" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.547263" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:25.547495" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.547540" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.488295" elapsed="0.059268"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.549777" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.548157" elapsed="0.001665"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.548126" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.550449" 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-07-28T01:54:25.550024" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.551033" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.550662" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.551109" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.551307" 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-07-28T01:54:25.547797" elapsed="0.003535"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.551505" elapsed="0.000445"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.487621" elapsed="0.064405"/>
</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-07-28T01:54:25.435632" elapsed="0.116451"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.428712" elapsed="0.123493"/>
</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-07-28T01:54:25.564183" 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-07-28T01:54:25.564535" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.563846" elapsed="0.000757"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.565936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.564946" elapsed="0.001124"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.566847" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.566418" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.567300" 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-07-28T01:54:25.567029" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.567768" 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-07-28T01:54:25.567494" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.568741" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.567948" elapsed="0.000825"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.569269" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.568933" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.570041" 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-07-28T01:54:25.569531" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.570605" 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-07-28T01:54:25.570244" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.571130" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.570804" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.571677" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.571335" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.572205" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.571882" 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-07-28T01:54:25.563067" elapsed="0.009239"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.572862" 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-07-28T01:54:25.572471" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.573292" 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-07-28T01:54:25.573045" 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-07-28T01:54:25.581344" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.581035" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.589139" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.589393" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.589560" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.581517" elapsed="0.008088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.590290" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.589903" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.593677" 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-07-28T01:54:25.590613" elapsed="0.003154"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.596404" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.593865" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.593838" elapsed="0.002687"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.600479" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.600528" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.596724" elapsed="0.003830"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.602529" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.600629" elapsed="0.001955"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.600610" elapsed="0.001998"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.602641" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:25.602838" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.602881" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.580714" elapsed="0.022189"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.605096" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.603445" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.603428" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.605749" 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-07-28T01:54:25.605315" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.606371" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.605962" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.606446" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:25.606649" 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-07-28T01:54:25.603113" 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-07-28T01:54:25.606832" elapsed="0.000484"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.580112" elapsed="0.027268"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.615338" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.615035" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.629443" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.630652" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.631302" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.615511" elapsed="0.015851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.632346" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.631764" elapsed="0.000724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.638527" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.632852" elapsed="0.006876"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.641565" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.639805" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.639785" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.672642" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.672690" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.641781" elapsed="0.030933"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.674591" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.672795" elapsed="0.001855"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.672776" elapsed="0.001898"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.674707" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:25.674909" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.674954" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.614656" elapsed="0.060321"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.677178" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.675553" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.675534" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.677835" 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-07-28T01:54:25.677400" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.678505" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.678079" elapsed="0.000455"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.678588" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:25.678771" 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-07-28T01:54:25.675196" elapsed="0.003600"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.678952" 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-07-28T01:54:25.614017" elapsed="0.065421"/>
</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-07-28T01:54:25.559429" elapsed="0.120085"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.552517" elapsed="0.127138"/>
</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-07-28T01:54:25.690817" 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-07-28T01:54:25.690961" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.690672" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.691658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.691141" elapsed="0.000547"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.692132" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.691844" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.692617" 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-07-28T01:54:25.692308" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.693072" 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-07-28T01:54:25.692794" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.694275" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.693249" elapsed="0.001058"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.694823" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.694486" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.695398" 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-07-28T01:54:25.695073" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.695944" 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-07-28T01:54:25.695615" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.696474" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.696141" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.697002" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.696679" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.697540" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.697199" 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-07-28T01:54:25.690321" elapsed="0.007318"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.698269" 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-07-28T01:54:25.697790" elapsed="0.000511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.698726" 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-07-28T01:54:25.698483" 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-07-28T01:54:25.706660" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.706336" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.713747" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.714027" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.714139" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.706816" elapsed="0.007349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.714655" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.714371" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.716981" 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-07-28T01:54:25.714844" 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-07-28T01:54:25.718925" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.717113" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.717094" elapsed="0.001903"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.722864" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.722945" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.719135" elapsed="0.003843"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.725810" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.723082" elapsed="0.002828"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.723056" elapsed="0.002888"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.725991" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:25.726279" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.726341" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.706007" elapsed="0.020366"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.729509" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.727220" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.727194" elapsed="0.002411"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.730433" 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-07-28T01:54:25.729828" elapsed="0.000672"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.731181" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.730762" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.731257" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.731436" 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-07-28T01:54:25.726699" 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-07-28T01:54:25.731647" 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-07-28T01:54:25.705402" elapsed="0.026707"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.740128" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.739819" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.754914" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.756064" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.756789" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.740282" elapsed="0.016569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.757879" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.757207" elapsed="0.000778"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.763355" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.758320" elapsed="0.006437"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.767422" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.764860" elapsed="0.002651"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.764833" elapsed="0.002710"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.852915" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.852992" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.767739" elapsed="0.085280"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.855072" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.853148" elapsed="0.001985"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.853117" elapsed="0.002043"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.855198" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:25.855424" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.855483" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.739418" elapsed="0.116090"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.857763" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.856137" elapsed="0.001695"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.856119" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.858507" 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-07-28T01:54:25.858022" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.859070" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.858716" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.859144" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.859336" 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-07-28T01:54:25.855777" elapsed="0.003584"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.859533" 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-07-28T01:54:25.738791" elapsed="0.121229"/>
</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-07-28T01:54:25.686998" elapsed="0.173080"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.679962" elapsed="0.180255"/>
</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-07-28T01:54:25.871565" 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-07-28T01:54:25.871732" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.871393" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.872382" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.871926" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.872880" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.872582" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.873342" 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-07-28T01:54:25.873068" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.874068" 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-07-28T01:54:25.873544" elapsed="0.000553"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.875091" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.874252" elapsed="0.000871"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.875671" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.875295" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.876268" 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-07-28T01:54:25.875926" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.876837" 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-07-28T01:54:25.876500" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.877364" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.877044" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.877951" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.877593" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.878510" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.878148" 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-07-28T01:54:25.871048" elapsed="0.007565"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.879170" 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-07-28T01:54:25.878773" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.879621" 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-07-28T01:54:25.879350" 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-07-28T01:54:25.887548" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.887209" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.894836" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.895181" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:25.895322" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.887706" elapsed="0.007647"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.895886" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.895624" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.898247" 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-07-28T01:54:25.896087" 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-07-28T01:54:25.900197" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.898380" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.898360" elapsed="0.001909"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.904587" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.904652" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:25.900419" elapsed="0.004279"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.907256" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.904803" elapsed="0.002530"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.904777" elapsed="0.002590"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.907425" elapsed="0.000058"/>
</return>
<msg time="2026-07-28T01:54:25.907721" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:25.907795" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:25.886892" elapsed="0.020935"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.910943" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.908619" elapsed="0.002388"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.908594" elapsed="0.002443"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.911850" 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-07-28T01:54:25.911257" elapsed="0.000630"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.912647" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.912124" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.912753" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:25.913018" 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-07-28T01:54:25.908121" elapsed="0.004932"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.913271" elapsed="0.000627"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:25.886299" elapsed="0.027689"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.921996" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:25.921685" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:25.934674" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:25.935761" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:25.936416" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:25.922151" elapsed="0.014356"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.937484" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:25.936869" elapsed="0.000728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.943062" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:25.938056" elapsed="0.005965"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.945867" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.944095" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.944076" elapsed="0.001864"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.976133" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:25.976183" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:25.946084" elapsed="0.030122"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:25.978110" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:25.976287" elapsed="0.001880"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.976268" elapsed="0.001924"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:25.978226" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:25.978427" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:25.978497" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:25.921298" elapsed="0.057224"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:25.980718" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:25.979088" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:25.979070" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.981375" 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-07-28T01:54:25.980942" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.981958" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:25.981580" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:25.982033" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:25.982222" 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-07-28T01:54:25.978742" elapsed="0.003505"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:25.982403" 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-07-28T01:54:25.920688" elapsed="0.062203"/>
</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-07-28T01:54:25.867693" elapsed="0.115254"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.860558" elapsed="0.122509"/>
</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-07-28T01:54:25.994557" 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-07-28T01:54:25.994720" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.994399" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:25.995342" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:25.994902" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.995835" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:25.995550" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.996295" 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-07-28T01:54:25.996023" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:25.996766" 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-07-28T01:54:25.996496" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:25.997904" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:25.996952" elapsed="0.000984"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.998444" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:25.998096" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.999040" 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-07-28T01:54:25.998714" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:25.999593" 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-07-28T01:54:25.999247" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.000124" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:25.999799" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.000663" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.000320" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.001189" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.000858" 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-07-28T01:54:25.994053" elapsed="0.007244"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.001874" 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-07-28T01:54:26.001446" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.002309" 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-07-28T01:54:26.002056" 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-07-28T01:54:26.010301" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.009994" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.017248" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.017538" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.017652" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.010486" elapsed="0.007192"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.018185" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.017928" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.021385" 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-07-28T01:54:26.018385" elapsed="0.003131"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.024239" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.021619" elapsed="0.002691"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.021592" elapsed="0.002749"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.029131" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.029210" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.024571" elapsed="0.004672"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.031660" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.029346" elapsed="0.002381"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.029320" elapsed="0.002431"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.031784" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.031979" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.032023" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.009637" elapsed="0.022408"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.034250" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.032632" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.032614" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.034902" 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-07-28T01:54:26.034488" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.035465" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.035090" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.035543" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.035722" 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-07-28T01:54:26.032274" elapsed="0.003484"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.035915" 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-07-28T01:54:26.009007" elapsed="0.027368"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.044319" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.044021" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.061535" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.062663" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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-07-28T01:54:26.063318" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.044488" elapsed="0.018889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.064402" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.063787" elapsed="0.000748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.068868" 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;616000000&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;110000000&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;651000000&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;691000000&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;731000000&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;775000000&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;110000000&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;210000000&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;818000000&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;256000000&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;854000000&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;298000000&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;894000000&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;336000000&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;939000000&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;380000000&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;980000000&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;8&lt;/second&gt;&lt;nanosecond&gt;20000000&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;923000000&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;245000000&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;959000000&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;288000000&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;0&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;331000000&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;39000000&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;365000000&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;405000000&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;455000000&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;499000000&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;89000000&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;533000000&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;567000000&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;506000000&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;556000000&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;84000000&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;595000000&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;671000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;634000000&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;674000000&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;715000000&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;758000000&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;751000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;802000000&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;785000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;120000000&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;846000000&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;824000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;161000000&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;884000000&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;873000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;198000000&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;915000000&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;965000000&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;7&lt;/second&gt;&lt;nanosecond&gt;0&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;7&lt;/second&gt;&lt;nanosecond&gt;31000000&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;460000000&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;425000000&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-07-28T01:54:26.064873" elapsed="0.005365"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.072870" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.070340" elapsed="0.002614"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.070313" elapsed="0.002674"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.105267" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.105338" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.073185" elapsed="0.032186"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.107638" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.105508" elapsed="0.002188"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.105478" elapsed="0.002243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.107755" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:26.107957" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.108002" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.043637" elapsed="0.064389"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.110219" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.108604" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.108585" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.110864" 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-07-28T01:54:26.110436" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.111413" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.111057" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.111506" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.111689" 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-07-28T01:54:26.108247" 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-07-28T01:54:26.111875" 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-07-28T01:54:26.042995" elapsed="0.069338"/>
</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-07-28T01:54:25.990653" elapsed="0.121736"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:25.983397" elapsed="0.129133"/>
</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-07-28T01:54:26.123425" 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-07-28T01:54:26.123590" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.123282" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.124203" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cbd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.123774" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.124691" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.124387" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.125148" 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-07-28T01:54:26.124869" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.125616" 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-07-28T01:54:26.125324" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.128675" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.125809" elapsed="0.002898"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.129201" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.128864" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.129836" 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-07-28T01:54:26.129445" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.130363" 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-07-28T01:54:26.130032" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.130888" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.130573" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.131403" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.131087" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.131945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cbd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.131618" 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-07-28T01:54:26.122945" elapsed="0.009097"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.132592" 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-07-28T01:54:26.132193" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.133015" 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-07-28T01:54:26.132773" 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-07-28T01:54:26.140801" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.140492" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.146933" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.147183" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.147304" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.140959" elapsed="0.006371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.147805" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.147548" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.150150" 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-07-28T01:54:26.147999" elapsed="0.002213"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.152727" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.150284" elapsed="0.002514"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.150264" elapsed="0.002566"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.157542" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.157607" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.153027" elapsed="0.004612"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.160419" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.157760" elapsed="0.002762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.157734" elapsed="0.002822"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.160603" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:26.160883" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.160943" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.140158" elapsed="0.020817"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.163699" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.161866" elapsed="0.001879"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.161839" elapsed="0.001928"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.164314" 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-07-28T01:54:26.163914" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.164866" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.164517" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.164941" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.165119" 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-07-28T01:54:26.161270" elapsed="0.003874"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.165300" 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-07-28T01:54:26.139594" elapsed="0.026193"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.173511" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.173197" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.187062" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.187552" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.187843" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.173701" elapsed="0.014169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.188293" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.188036" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.190842" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.188495" elapsed="0.003301"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.193622" elapsed="0.000054"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.191871" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.191851" elapsed="0.001884"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.222224" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.222282" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.193878" elapsed="0.028428"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.224124" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.222386" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.222367" elapsed="0.001837"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.224237" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:26.224436" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.224497" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.172825" elapsed="0.051695"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.226720" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.225095" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.225077" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.227351" 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-07-28T01:54:26.226943" elapsed="0.000435"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.227948" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.227571" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.228037" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.228217" 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-07-28T01:54:26.224744" 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-07-28T01:54:26.228399" 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-07-28T01:54:26.172192" elapsed="0.056705"/>
</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-07-28T01:54:26.119639" elapsed="0.109315"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.112722" elapsed="0.116354"/>
</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-07-28T01:54:26.240264" 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-07-28T01:54:26.240450" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.240122" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.241113" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f6a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.240658" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.241603" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.241293" elapsed="0.000401"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.242162" 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-07-28T01:54:26.241871" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.242634" 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-07-28T01:54:26.242335" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.243740" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.242808" elapsed="0.000963"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.244276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.243939" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.244881" 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-07-28T01:54:26.244543" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.245468" 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-07-28T01:54:26.245096" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.246028" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.245691" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.246574" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.246225" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.247105" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f6a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.246771" 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-07-28T01:54:26.239779" elapsed="0.007424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.247818" 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-07-28T01:54:26.247383" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.248257" 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-07-28T01:54:26.248000" 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-07-28T01:54:26.256185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.255877" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.262300" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.262591" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.262708" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.256341" elapsed="0.006421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.263192" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.262925" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.265563" 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-07-28T01:54:26.263380" elapsed="0.002262"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.267499" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.265715" elapsed="0.001850"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.265695" elapsed="0.001894"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.271324" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.271388" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.267730" elapsed="0.003690"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.277201" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.271551" elapsed="0.005732"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.271523" elapsed="0.005793"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.277363" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:26.277784" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.277853" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.255550" elapsed="0.022335"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.280955" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.278697" elapsed="0.002344"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.278672" elapsed="0.002400"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.281888" 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-07-28T01:54:26.281276" elapsed="0.000649"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.282701" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.282151" elapsed="0.000587"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.282807" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:26.283070" 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-07-28T01:54:26.278198" 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-07-28T01:54:26.283337" elapsed="0.000574"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:26.254969" elapsed="0.029030"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.293844" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.293499" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.307302" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.308407" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.309138" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.294000" elapsed="0.015198"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.310243" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.309653" elapsed="0.000691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.316280" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.310803" elapsed="0.007757"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.320475" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.318687" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.318663" elapsed="0.001889"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.348928" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.348976" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.320692" elapsed="0.028318"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.350919" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.349093" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.349073" elapsed="0.001935"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.351046" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:26.351249" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.351294" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.293110" elapsed="0.058206"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.353497" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.351903" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.351885" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.354153" 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-07-28T01:54:26.353737" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.354718" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.354341" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.354794" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.354978" 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-07-28T01:54:26.351559" 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-07-28T01:54:26.355162" 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-07-28T01:54:26.292486" elapsed="0.063211"/>
</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-07-28T01:54:26.236426" elapsed="0.119328"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.229374" elapsed="0.126502"/>
</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-07-28T01:54:26.367058" 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-07-28T01:54:26.367227" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.366914" elapsed="0.000346"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.367879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c3b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.367415" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.368350" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.368061" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.368820" 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-07-28T01:54:26.368544" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.369296" 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-07-28T01:54:26.369017" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.370449" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.369490" elapsed="0.001007"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.371005" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.370665" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.371606" 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-07-28T01:54:26.371252" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.372142" 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-07-28T01:54:26.371807" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.372675" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.372337" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.373195" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.372874" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.373766" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c3b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.373394" elapsed="0.000415"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:26.366574" elapsed="0.007293"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.374410" 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-07-28T01:54:26.374020" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.374863" 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-07-28T01:54:26.374618" 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-07-28T01:54:26.382803" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.382493" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.389833" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.390090" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.390205" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.382965" elapsed="0.007299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.390837" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.390430" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.394137" 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-07-28T01:54:26.391107" elapsed="0.003119"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.396833" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.394340" elapsed="0.002582"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.394310" elapsed="0.002647"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.401783" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.401849" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.397180" elapsed="0.004716"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.404112" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.402004" elapsed="0.002165"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.401978" elapsed="0.002214"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.404225" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:26.404432" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.404490" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.382156" elapsed="0.022358"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.406712" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.405077" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.405060" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.407336" 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-07-28T01:54:26.406923" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.407904" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.407552" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.407995" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.408175" 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-07-28T01:54:26.404737" 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-07-28T01:54:26.408356" 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-07-28T01:54:26.381539" elapsed="0.027308"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.416707" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.416389" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.430796" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.431255" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.431566" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.416862" elapsed="0.014731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.432008" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.431754" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.434551" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.432194" 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-07-28T01:54:26.437327" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.435573" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.435553" elapsed="0.001845"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.467527" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.467577" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.437580" elapsed="0.030020"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.469616" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.467683" elapsed="0.002002"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.467664" elapsed="0.002044"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.469741" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:26.469940" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.469984" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.416017" elapsed="0.054000"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.472277" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.470603" elapsed="0.001718"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.470585" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.472989" 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-07-28T01:54:26.472519" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.473593" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.473182" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.473670" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.473850" 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-07-28T01:54:26.470239" elapsed="0.003636"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.474046" 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-07-28T01:54:26.415393" elapsed="0.059151"/>
</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-07-28T01:54:26.363149" elapsed="0.111464"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.356183" elapsed="0.118553"/>
</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-07-28T01:54:26.485935" 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-07-28T01:54:26.486095" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.485795" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.486740" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed8f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.486278" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.487228" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.486934" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.487711" 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-07-28T01:54:26.487407" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.488170" 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-07-28T01:54:26.487889" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.489297" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.488346" elapsed="0.000982"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.489870" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.489521" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.490479" 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-07-28T01:54:26.490128" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.491029" 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-07-28T01:54:26.490689" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.491575" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.491226" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.492129" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.491795" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.492694" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed8f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.492340" 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-07-28T01:54:26.485406" elapsed="0.007386"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.493355" 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-07-28T01:54:26.492944" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.493823" 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-07-28T01:54:26.493567" 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-07-28T01:54:26.501918" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.501436" elapsed="0.000510"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.508068" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.508524" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.508686" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.502080" elapsed="0.006691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.509384" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.509014" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.512774" 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-07-28T01:54:26.509713" elapsed="0.003150"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.515523" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.512967" elapsed="0.002629"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.512938" elapsed="0.002690"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.520421" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.520516" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.515838" elapsed="0.004712"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.523363" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.520655" elapsed="0.002785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.520628" elapsed="0.002864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.523556" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:26.523837" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.523897" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.501114" elapsed="0.022814"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.527078" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.524731" elapsed="0.002409"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.524707" elapsed="0.002463"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.528029" 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-07-28T01:54:26.527373" elapsed="0.000710"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.528845" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.528310" elapsed="0.000572"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.528966" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:26.529218" 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-07-28T01:54:26.524235" elapsed="0.005018"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.529538" 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-07-28T01:54:26.500520" elapsed="0.029671"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.538361" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.538019" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.552071" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.553194" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.554143" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.538569" elapsed="0.015644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.555251" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.554656" elapsed="0.000698"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.560164" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.555721" elapsed="0.005849"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.564187" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.561680" elapsed="0.002574"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.561652" elapsed="0.002634"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.596203" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.596251" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.564499" elapsed="0.031776"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.598175" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.596359" elapsed="0.001885"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.596339" elapsed="0.001930"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.598304" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:26.598524" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.598568" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.537581" elapsed="0.061020"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.600888" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.599200" elapsed="0.001733"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.599175" elapsed="0.001780"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.601614" 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-07-28T01:54:26.601119" elapsed="0.000523"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.602245" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.601826" elapsed="0.000448"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.602339" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:26.602569" 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-07-28T01:54:26.598830" elapsed="0.003766"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.602767" 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-07-28T01:54:26.536903" elapsed="0.066334"/>
</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-07-28T01:54:26.482051" elapsed="0.121244"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.475025" elapsed="0.128405"/>
</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-07-28T01:54:26.614750" 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-07-28T01:54:26.614922" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.614606" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.615585" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063dcb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.615124" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.616062" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.615765" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.616521" 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-07-28T01:54:26.616237" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.616985" 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-07-28T01:54:26.616696" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.618043" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.617173" elapsed="0.000901"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.618604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.618231" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.619197" 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-07-28T01:54:26.618854" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.619752" 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-07-28T01:54:26.619393" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.620285" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.619959" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.620839" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.620500" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.621386" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063dcb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.621049" elapsed="0.000417"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:26.614250" elapsed="0.007284"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.622110" 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-07-28T01:54:26.621707" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.622560" 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-07-28T01:54:26.622302" 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-07-28T01:54:26.631043" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.630694" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.638001" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.638269" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.638379" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.631259" elapsed="0.007146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.638856" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.638588" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.641205" 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-07-28T01:54:26.639081" 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-07-28T01:54:26.643445" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.641341" elapsed="0.002195"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.641320" elapsed="0.002248"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.648243" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.648309" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.643764" elapsed="0.004577"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.651163" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.648446" elapsed="0.002795"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.648420" elapsed="0.002855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.651320" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:26.651631" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.651694" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.630291" elapsed="0.021435"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.654762" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.652533" elapsed="0.002274"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.652507" elapsed="0.002321"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.655412" 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-07-28T01:54:26.654989" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.655982" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.655618" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.656057" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.656249" 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-07-28T01:54:26.652023" elapsed="0.004252"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.656432" 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-07-28T01:54:26.629631" elapsed="0.027282"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.665059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.664738" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.678406" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.679442" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.680157" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.665222" elapsed="0.014996"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.681265" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.680634" elapsed="0.000751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.687401" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.681833" elapsed="0.007928"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.692107" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.689930" elapsed="0.002227"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.689886" elapsed="0.002294"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.722711" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.722775" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.692323" elapsed="0.030478"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.724731" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.722899" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.722875" elapsed="0.001953"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.724873" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:26.725230" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.725274" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.664334" elapsed="0.060963"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.727588" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.725951" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.725933" elapsed="0.001735"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.728275" 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-07-28T01:54:26.727822" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.728858" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.728493" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.728935" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.729129" 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-07-28T01:54:26.725585" 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-07-28T01:54:26.729315" elapsed="0.000447"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:26.663697" elapsed="0.066129"/>
</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-07-28T01:54:26.610885" elapsed="0.118999"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.603812" elapsed="0.126213"/>
</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-07-28T01:54:26.745584" 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-07-28T01:54:26.745801" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.745352" elapsed="0.000480"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.746532" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032b6a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.746011" elapsed="0.000551"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.747030" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.746730" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.747526" 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-07-28T01:54:26.747226" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.747998" 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-07-28T01:54:26.747716" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.749216" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.748177" elapsed="0.001071"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.749822" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.749436" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.750487" 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-07-28T01:54:26.750122" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.751046" 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-07-28T01:54:26.750692" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.751602" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:26.751261" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.752216" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:26.751830" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.752789" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032b6a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.752422" 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-07-28T01:54:26.744969" elapsed="0.007923"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.753529" 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-07-28T01:54:26.753047" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.753982" 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-07-28T01:54:26.753731" 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-07-28T01:54:26.762042" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.761713" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.768525" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.768835" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.768949" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.762213" elapsed="0.006761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.769501" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.769185" elapsed="0.000365"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.771879" 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-07-28T01:54:26.769699" elapsed="0.002244"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.773868" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.772026" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.772001" elapsed="0.001946"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.777280" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.777326" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.774091" elapsed="0.003258"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.779909" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.777480" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.777446" elapsed="0.002598"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.780094" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:26.780392" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.780483" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.761333" elapsed="0.019198"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.783959" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.781401" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.781327" elapsed="0.002733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.784919" 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-07-28T01:54:26.784282" elapsed="0.000677"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.785808" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.785219" elapsed="0.000628"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.785920" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:26.786184" 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-07-28T01:54:26.780849" elapsed="0.005371"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.786489" 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-07-28T01:54:26.760732" elapsed="0.026466"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.796508" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.796181" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.809732" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.810841" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.811621" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.796666" elapsed="0.015018"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.812687" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.812064" elapsed="0.000728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.818582" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.813131" elapsed="0.006429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.821472" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.819637" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.819617" elapsed="0.001930"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.855074" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.855129" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.821693" elapsed="0.033461"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.857132" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.855273" elapsed="0.001933"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.855241" elapsed="0.001991"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.857266" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:26.857507" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.857553" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.795803" elapsed="0.061779"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.859961" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.858332" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.858313" elapsed="0.001730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.860653" 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-07-28T01:54:26.860196" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.861219" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.860856" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.861294" elapsed="0.000058"/>
</return>
<msg time="2026-07-28T01:54:26.861534" 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-07-28T01:54:26.857925" elapsed="0.003635"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.861718" 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-07-28T01:54:26.795150" elapsed="0.067039"/>
</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-07-28T01:54:26.741276" elapsed="0.120981"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.730356" elapsed="0.132030"/>
</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-07-28T01:54:26.873645" 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-07-28T01:54:26.873810" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:26.873498" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:26.874430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:26.873989" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.874922" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:26.874638" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.875392" 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-07-28T01:54:26.875111" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:26.875853" 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-07-28T01:54:26.875582" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.876752" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:26.876029" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.877286" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.876941" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.877934" 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-07-28T01:54:26.877588" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.878490" 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-07-28T01:54:26.878132" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.879014" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:26.878686" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.879557" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:26.879211" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.880087" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:26.879756" 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-07-28T01:54:26.873104" elapsed="0.007080"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.880759" 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-07-28T01:54:26.880347" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.881198" 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-07-28T01:54:26.880943" 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-07-28T01:54:26.890429" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.890038" elapsed="0.000450"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.899731" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.900012" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:26.900126" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.890654" elapsed="0.009498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.900696" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.900335" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.903292" 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-07-28T01:54:26.900907" elapsed="0.002523"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.905470" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.903538" elapsed="0.002005"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.903513" elapsed="0.002066"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.910181" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.910249" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:26.905799" elapsed="0.004483"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.913000" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.910396" elapsed="0.002684"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.910369" elapsed="0.002744"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.913160" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:26.913506" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:26.913573" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:26.889622" elapsed="0.023983"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.916890" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.914395" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.914371" elapsed="0.002614"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.917877" 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-07-28T01:54:26.917196" elapsed="0.000718"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.918666" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.918145" elapsed="0.000559"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.918774" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:26.919026" 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-07-28T01:54:26.913926" elapsed="0.005135"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:26.919282" elapsed="0.000630"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:26.888888" elapsed="0.031115"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.928519" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:26.928191" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:26.942284" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:26.943365" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:26.944080" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:26.928677" elapsed="0.015463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.945096" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:26.944526" elapsed="0.000671"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.950425" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:26.945593" elapsed="0.006252"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.954478" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.951950" elapsed="0.002608"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.951922" elapsed="0.002675"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:26.989425" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:26.989508" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:26.954820" elapsed="0.034716"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:26.991623" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:26.989666" elapsed="0.002018"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.989635" elapsed="0.002077"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:26.991750" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:26.991982" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:26.992027" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:26.927813" elapsed="0.064238"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:26.994372" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:26.992700" elapsed="0.001717"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:26.992681" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.995083" 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-07-28T01:54:26.994618" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:26.995650" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:26.995275" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:26.995725" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:26.995908" 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-07-28T01:54:26.992313" 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-07-28T01:54:26.996094" elapsed="0.000432"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:26.927174" elapsed="0.069419"/>
</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-07-28T01:54:26.869797" elapsed="0.126856"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.862722" elapsed="0.134071"/>
</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-07-28T01:54:27.007910" 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-07-28T01:54:27.008078" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.007763" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.008725" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5ee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.008262" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.009192" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.008910" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.009688" 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-07-28T01:54:27.009398" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.010133" 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-07-28T01:54:27.009863" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.011073" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.010311" elapsed="0.000793"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.011625" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.011268" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.012230" 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-07-28T01:54:27.011896" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.012778" 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-07-28T01:54:27.012428" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.013306" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.012973" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.014011" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.013520" elapsed="0.000538"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.014560" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5ee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.014213" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:27.007412" elapsed="0.007249"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.015217" 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-07-28T01:54:27.014816" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.015716" 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-07-28T01:54:27.015446" 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-07-28T01:54:27.023688" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.023338" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.031772" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.032055" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.032167" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.023854" elapsed="0.008339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.032647" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.032359" elapsed="0.000387"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.035105" 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-07-28T01:54:27.032896" elapsed="0.002273"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.037029" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.035248" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.035226" elapsed="0.001882"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.041836" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.042024" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.037336" elapsed="0.004721"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.044591" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.042162" elapsed="0.002507"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.042136" elapsed="0.002566"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.044748" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:27.045040" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.045102" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.022993" elapsed="0.022140"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.048507" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.045994" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.045968" elapsed="0.002635"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.049414" 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-07-28T01:54:27.048823" elapsed="0.000648"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.050210" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.049704" elapsed="0.000556"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.050330" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:27.050613" 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-07-28T01:54:27.045504" elapsed="0.005144"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.050880" 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-07-28T01:54:27.022385" elapsed="0.029163"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.060071" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.059756" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.074036" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.074756" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.075170" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.060226" elapsed="0.014999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.075845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.075449" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.079508" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.076106" elapsed="0.004744"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.083515" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.080950" elapsed="0.002632"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.080923" elapsed="0.002704"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.112991" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.113040" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.083823" elapsed="0.029251"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.114953" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.113157" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.113136" elapsed="0.001911"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.115080" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:27.115280" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.115324" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.059354" elapsed="0.055992"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.117623" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.115946" elapsed="0.001722"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.115929" elapsed="0.001761"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.118273" 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-07-28T01:54:27.117850" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.118847" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.118477" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.118922" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.119113" 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-07-28T01:54:27.115600" elapsed="0.003538"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.119296" 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-07-28T01:54:27.058730" elapsed="0.061041"/>
</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-07-28T01:54:27.004043" elapsed="0.115796"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:26.997103" elapsed="0.122861"/>
</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-07-28T01:54:27.131109" 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-07-28T01:54:27.131266" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.130957" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.131897" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e71a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.131446" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.132371" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.132077" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.132846" 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-07-28T01:54:27.132562" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.133324" 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-07-28T01:54:27.133021" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.134237" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.133515" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.134782" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.134425" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.135371" 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-07-28T01:54:27.135034" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.135937" 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-07-28T01:54:27.135603" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.136634" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.136143" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.137220" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.136837" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.137828" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e71a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.137441" 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-07-28T01:54:27.130615" elapsed="0.007315"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.138496" 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-07-28T01:54:27.138082" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.138933" 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-07-28T01:54:27.138680" 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-07-28T01:54:27.146991" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.146688" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.155154" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.155526" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.155693" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.147147" elapsed="0.008582"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.156318" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.155951" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.159950" 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-07-28T01:54:27.156661" elapsed="0.003384"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.162658" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.160148" elapsed="0.002599"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.160121" elapsed="0.002656"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.166941" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.166988" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.162972" elapsed="0.004039"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.168845" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.167087" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.167069" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.168960" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:27.169216" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.169263" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.146356" elapsed="0.022930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.171675" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.169865" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.169847" elapsed="0.001908"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.172328" 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-07-28T01:54:27.171904" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.172899" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.172533" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.172975" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:27.173152" 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-07-28T01:54:27.169532" elapsed="0.003672"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.173362" 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-07-28T01:54:27.145804" elapsed="0.028050"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.181856" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.181540" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.197334" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.198032" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.198503" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.182013" elapsed="0.016529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.199142" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.198769" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.202839" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.199405" elapsed="0.004811"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.206843" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.204320" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.204292" elapsed="0.002651"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.234962" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.235009" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.207142" elapsed="0.027891"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.236943" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.235125" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.235094" elapsed="0.001929"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.237067" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:27.237282" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.237326" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.181127" elapsed="0.056233"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.239554" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.237936" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.237918" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.240195" 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-07-28T01:54:27.239771" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.240766" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.240396" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.240855" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.241035" 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-07-28T01:54:27.237599" 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-07-28T01:54:27.241243" 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-07-28T01:54:27.180491" elapsed="0.061227"/>
</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-07-28T01:54:27.127219" elapsed="0.114556"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.120180" elapsed="0.121728"/>
</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-07-28T01:54:27.252896" 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-07-28T01:54:27.253059" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.252753" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.253736" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.253281" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.254212" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.253918" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.254678" 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-07-28T01:54:27.254390" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.255135" 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-07-28T01:54:27.254867" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.256062" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.255310" elapsed="0.000782"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.256608" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.256255" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.257213" 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-07-28T01:54:27.256862" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.257763" 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-07-28T01:54:27.257410" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.258270" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.257958" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.258967" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.258483" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.259525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.259168" 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-07-28T01:54:27.252396" elapsed="0.007230"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.260173" 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-07-28T01:54:27.259777" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.260627" 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-07-28T01:54:27.260367" 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-07-28T01:54:27.268534" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.268208" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.276179" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.276550" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.276719" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.268703" elapsed="0.008052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.277364" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.276978" elapsed="0.000514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.280715" 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-07-28T01:54:27.277721" elapsed="0.003080"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.283423" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.280899" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.280872" elapsed="0.002684"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.288310" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.288375" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.283806" elapsed="0.004601"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.291031" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.288534" elapsed="0.002574"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.288505" elapsed="0.002636"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.291186" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:27.291493" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.291557" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.267882" elapsed="0.023707"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.295017" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.292432" elapsed="0.002649"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.292407" elapsed="0.002705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.295933" 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-07-28T01:54:27.295320" elapsed="0.000650"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.296735" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.296195" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.296841" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:27.297090" 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-07-28T01:54:27.291900" elapsed="0.005257"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.297392" elapsed="0.000490"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:27.267307" elapsed="0.030638"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.306122" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.305821" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.321133" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.321836" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.322340" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.306277" elapsed="0.016116"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.323022" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.322649" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.326708" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.323296" elapsed="0.004782"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.330763" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.328181" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.328154" elapsed="0.002708"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.410368" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.410443" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.331073" elapsed="0.079409"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.412488" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.410609" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.410578" elapsed="0.002008"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.412622" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:27.412846" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.412890" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.305427" elapsed="0.107485"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.415179" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.413586" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.413567" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.415876" 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-07-28T01:54:27.415396" elapsed="0.000507"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.416414" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.416065" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.416504" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:27.416685" 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-07-28T01:54:27.413201" elapsed="0.003509"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.416867" 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-07-28T01:54:27.304759" elapsed="0.112605"/>
</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-07-28T01:54:27.249020" elapsed="0.168403"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.242111" elapsed="0.175453"/>
</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-07-28T01:54:27.428343" 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-07-28T01:54:27.428528" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.428200" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.429166" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1f880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.428708" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.429643" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.429346" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.430085" 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-07-28T01:54:27.429818" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.430540" 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-07-28T01:54:27.430258" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.431561" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.430716" elapsed="0.000877"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.432084" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.431750" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.432673" 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-07-28T01:54:27.432334" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.433215" 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-07-28T01:54:27.432865" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.433736" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.433406" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.434247" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.433930" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.434774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1f880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.434440" 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-07-28T01:54:27.427868" elapsed="0.007001"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.435395" 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-07-28T01:54:27.435017" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.435832" 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-07-28T01:54:27.435592" 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-07-28T01:54:27.443602" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.443280" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.451832" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.452107" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.452217" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.443758" elapsed="0.008485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.452792" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.452402" elapsed="0.000497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.456087" 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-07-28T01:54:27.453139" elapsed="0.003048"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.458832" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.456284" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.456257" elapsed="0.002675"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.463186" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.463233" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.459138" elapsed="0.004118"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.465299" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.463347" elapsed="0.002008"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.463325" elapsed="0.002054"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.465411" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:27.465637" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.465681" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.442965" elapsed="0.022738"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.467894" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.466266" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.466248" elapsed="0.001713"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.468533" 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-07-28T01:54:27.468108" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.469115" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.468734" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.469191" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:27.469384" 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-07-28T01:54:27.465924" elapsed="0.003485"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.469588" 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-07-28T01:54:27.442394" elapsed="0.027655"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.478035" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.477725" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.491594" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.492681" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.493424" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.478190" elapsed="0.015328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.494607" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.493941" elapsed="0.000776"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.500649" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.495059" elapsed="0.007131"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.504058" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.502275" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.502255" elapsed="0.001875"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.529669" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.529717" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.504286" elapsed="0.025466"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.531624" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.529834" elapsed="0.001848"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.529814" elapsed="0.001892"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.531738" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.531934" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.531978" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.477321" elapsed="0.054680"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.534212" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.532583" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.532565" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.534887" 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-07-28T01:54:27.534448" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.535444" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.535077" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.535535" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.535716" 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-07-28T01:54:27.532219" elapsed="0.003522"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.535909" 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-07-28T01:54:27.476661" elapsed="0.059714"/>
</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-07-28T01:54:27.424592" elapsed="0.111839"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.417766" elapsed="0.118799"/>
</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-07-28T01:54:27.547642" 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-07-28T01:54:27.547795" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:27.547501" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.548412" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a77e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.547976" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.548891" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.548609" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.549387" 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-07-28T01:54:27.549101" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.549862" 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-07-28T01:54:27.549578" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.550970" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:27.550038" elapsed="0.000963"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.551518" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.551158" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.552093" 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-07-28T01:54:27.551754" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.552644" 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-07-28T01:54:27.552287" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.553199" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:27.552836" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.553750" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:27.553410" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.554300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a77e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.553959" 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-07-28T01:54:27.547144" elapsed="0.007253"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.554958" 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-07-28T01:54:27.554572" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.555396" 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-07-28T01:54:27.555139" 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-07-28T01:54:27.563437" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.563125" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.570011" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.570254" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.570364" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.563609" elapsed="0.006780"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.570869" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.570613" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.573264" 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-07-28T01:54:27.571076" elapsed="0.002251"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.575918" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.573410" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.573390" elapsed="0.002628"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.580799" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.580864" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.576213" elapsed="0.004682"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.583734" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.581024" elapsed="0.002800"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.580997" elapsed="0.002860"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.583903" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:27.584177" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.584250" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.562808" elapsed="0.021475"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.586894" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.585199" elapsed="0.001740"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.585172" elapsed="0.001789"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.587534" 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-07-28T01:54:27.587113" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.588080" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.587726" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.588155" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.588338" 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-07-28T01:54:27.584596" 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-07-28T01:54:27.588538" 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-07-28T01:54:27.562196" elapsed="0.026823"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.596948" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.596648" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.612533" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.613021" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.613311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.597137" elapsed="0.016201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.613777" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.613518" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.616485" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.613969" elapsed="0.003495"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.619309" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.617540" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.617520" elapsed="0.001860"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.643937" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.643986" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.619533" elapsed="0.024477"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.645934" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.644091" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.644072" elapsed="0.001943"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.646048" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:27.646248" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.646293" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.596251" elapsed="0.050065"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.648502" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.646886" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.646868" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.649159" 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-07-28T01:54:27.648720" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.649725" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.649351" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.649800" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.649983" 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-07-28T01:54:27.646549" 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-07-28T01:54:27.650167" 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-07-28T01:54:27.595637" elapsed="0.055011"/>
</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-07-28T01:54:27.543765" elapsed="0.106954"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.536758" elapsed="0.114084"/>
</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-07-28T01:54:27.662596" 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-07-28T01:54:27.662805" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:27.662439" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.663417" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03233d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.662991" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.663898" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.663615" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.664348" 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-07-28T01:54:27.664075" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.664813" 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-07-28T01:54:27.664538" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.667895" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:27.665004" elapsed="0.002923"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.668493" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.668086" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.669096" 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-07-28T01:54:27.668739" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.669639" 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-07-28T01:54:27.669294" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.670151" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:27.669837" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.670686" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:27.670347" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.671209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03233d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.670881" 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-07-28T01:54:27.662106" elapsed="0.009199"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.671874" 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-07-28T01:54:27.671487" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.672297" 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-07-28T01:54:27.672056" 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-07-28T01:54:27.680183" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.679880" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.685974" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.686216" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.686340" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.680338" elapsed="0.006028"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.686837" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.686578" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.689316" 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-07-28T01:54:27.687026" elapsed="0.002353"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.691237" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.689448" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.689429" elapsed="0.001879"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.695133" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.695197" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.691446" elapsed="0.003783"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.698031" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.695334" elapsed="0.002775"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.695308" elapsed="0.002834"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.698189" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:27.698483" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.698547" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.679557" elapsed="0.019022"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.701707" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.699358" elapsed="0.002413"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.699333" elapsed="0.002468"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.702596" 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-07-28T01:54:27.702007" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.703356" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.702858" elapsed="0.000538"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.703486" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:27.703742" 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-07-28T01:54:27.698869" 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-07-28T01:54:27.703997" elapsed="0.000567"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:27.678944" elapsed="0.025708"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.712846" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.712544" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.724767" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.725896" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.726617" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.713020" elapsed="0.013658"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.727642" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.727033" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.733587" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.728063" elapsed="0.006474"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.736370" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.734611" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.734591" elapsed="0.001853"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.760482" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.760532" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.736610" elapsed="0.023946"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.762412" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.760639" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.760619" elapsed="0.001892"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.762545" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.762744" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.762787" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.712149" elapsed="0.050661"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.765025" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.763368" elapsed="0.001702"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.763349" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.765729" 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-07-28T01:54:27.765245" elapsed="0.000514"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.766280" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.765924" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.766356" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.766558" 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-07-28T01:54:27.763030" elapsed="0.003555"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.766742" 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-07-28T01:54:27.711516" elapsed="0.055681"/>
</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-07-28T01:54:27.658487" elapsed="0.108767"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.651072" elapsed="0.116299"/>
</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-07-28T01:54:27.778628" 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-07-28T01:54:27.778780" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.778477" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.779408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.778974" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.779887" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.779606" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.780338" 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-07-28T01:54:27.780063" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.780895" 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-07-28T01:54:27.780532" elapsed="0.000392"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.782002" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.781078" elapsed="0.000956"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.782546" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.782194" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.783232" 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-07-28T01:54:27.782800" elapsed="0.000477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.783779" 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-07-28T01:54:27.783432" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.784295" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.783979" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.784891" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.784514" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.785420" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.785094" 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-07-28T01:54:27.778119" elapsed="0.007415"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.786075" 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-07-28T01:54:27.785686" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.786520" 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-07-28T01:54:27.786257" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.794587" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.794264" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.800535" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.800772" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.800914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.794744" elapsed="0.006198"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.801394" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.801135" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.804665" 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-07-28T01:54:27.801635" elapsed="0.003117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.807425" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.804873" elapsed="0.002643"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.804823" elapsed="0.002725"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.812419" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.812507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.807745" elapsed="0.004799"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.817134" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.812652" elapsed="0.004541"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.812625" elapsed="0.004593"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.817252" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.817466" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.817513" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.793947" elapsed="0.023589"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.819743" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.818086" elapsed="0.001703"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.818068" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.820487" 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-07-28T01:54:27.819958" elapsed="0.000557"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.821130" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.820684" elapsed="0.000474"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.821209" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.821391" 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-07-28T01:54:27.817752" 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-07-28T01:54:27.821595" 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-07-28T01:54:27.793313" elapsed="0.028734"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.829987" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.829663" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.844786" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.845889" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.846569" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.830147" elapsed="0.016520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.847911" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.847040" elapsed="0.000981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.852183" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.848344" elapsed="0.005267"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.856184" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.853716" elapsed="0.002536"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.853689" elapsed="0.002594"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.880743" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.880790" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.856521" elapsed="0.024314"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.882725" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.880959" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.880909" elapsed="0.001897"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.882840" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:27.883041" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:27.883086" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.829239" elapsed="0.053870"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.885298" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.883679" elapsed="0.001664"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.883660" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.886003" 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-07-28T01:54:27.885538" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.886578" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.886198" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.886655" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.886835" 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-07-28T01:54:27.883326" elapsed="0.003534"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.887020" 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-07-28T01:54:27.828613" elapsed="0.058879"/>
</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-07-28T01:54:27.774779" elapsed="0.112770"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.767572" elapsed="0.120095"/>
</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-07-28T01:54:27.898637" 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-07-28T01:54:27.898775" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.898498" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:27.899377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:27.898958" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.899864" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:27.899581" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.900311" 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-07-28T01:54:27.900039" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:27.900771" 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-07-28T01:54:27.900499" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.901662" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.900983" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.902182" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.901850" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.902958" 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-07-28T01:54:27.902417" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.903517" 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-07-28T01:54:27.903160" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.904044" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:27.903723" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.904587" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:27.904242" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.905154" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:27.904816" 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-07-28T01:54:27.898151" elapsed="0.007100"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.905805" 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-07-28T01:54:27.905401" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.906230" 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-07-28T01:54:27.905986" 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-07-28T01:54:27.914175" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.913868" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.921488" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.921817" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:27.921966" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.914332" elapsed="0.007670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.922601" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.922225" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.925796" 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-07-28T01:54:27.922865" elapsed="0.003058"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.928497" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.926023" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.925996" elapsed="0.002606"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:27.932067" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:27.932114" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:27.928864" elapsed="0.003274"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:27.933972" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:27.932213" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.932194" elapsed="0.001857"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:27.934085" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:27.934286" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:27.934331" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:27.913550" elapsed="0.020803"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.936839" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.935008" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.934990" elapsed="0.001921"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.937482" 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-07-28T01:54:27.937061" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.938032" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:27.937677" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:27.938108" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:27.938289" 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-07-28T01:54:27.934644" elapsed="0.003684"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:27.938502" 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-07-28T01:54:27.912980" elapsed="0.025981"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.947105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:27.946808" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:27.961671" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:27.962794" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:27.963486" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:27.947262" elapsed="0.016290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.964518" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:27.963916" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:27.969985" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:27.964987" elapsed="0.005953"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:27.972822" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:27.971013" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:27.970994" elapsed="0.001904"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.001793" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.001840" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:27.973039" elapsed="0.028825"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.003708" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.001945" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.001926" elapsed="0.001864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.003823" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:28.004029" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.004073" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:27.946409" elapsed="0.057687"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.006474" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.004700" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.004679" elapsed="0.001865"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.007306" 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-07-28T01:54:28.006693" elapsed="0.000644"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.007877" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.007516" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.007954" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.008136" 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-07-28T01:54:28.004332" elapsed="0.003830"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.008324" 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-07-28T01:54:27.945790" elapsed="0.063060"/>
</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-07-28T01:54:27.894834" elapsed="0.114075"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:27.887848" elapsed="0.121180"/>
</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-07-28T01:54:28.020020" 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-07-28T01:54:28.020160" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:28.019881" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.020889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.020340" elapsed="0.000580"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.021361" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.021075" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.021865" 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-07-28T01:54:28.021564" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.022317" 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-07-28T01:54:28.022045" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.023072" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.022511" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.023611" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.023259" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.024182" 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-07-28T01:54:28.023852" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.024728" 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-07-28T01:54:28.024379" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.025272" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:28.024953" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.025811" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.025486" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.026334" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.026012" 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-07-28T01:54:28.019545" elapsed="0.006890"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.026995" 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-07-28T01:54:28.026606" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.027422" 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-07-28T01:54:28.027177" 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-07-28T01:54:28.035663" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.035336" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.041777" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.041978" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.042084" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.035823" elapsed="0.006287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.042551" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.042271" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.044851" 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-07-28T01:54:28.042744" elapsed="0.002234"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.046829" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.045053" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.045033" elapsed="0.001867"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.049839" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.049904" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.047041" elapsed="0.002894"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.052480" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.050038" elapsed="0.002523"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.050012" elapsed="0.002588"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.052648" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:28.052950" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.053012" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.035015" elapsed="0.018029"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.056072" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.053835" elapsed="0.002300"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.053809" elapsed="0.002356"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.057007" 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-07-28T01:54:28.056376" elapsed="0.000669"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.057807" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.057274" elapsed="0.000569"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.057913" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:28.058162" 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-07-28T01:54:28.053341" elapsed="0.004857"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.058421" elapsed="0.000576"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:28.034393" elapsed="0.024694"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.067729" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.067411" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.081351" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.082287" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.082982" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.067883" elapsed="0.015160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.084029" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.083407" elapsed="0.000724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.089847" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.084484" elapsed="0.006348"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.092704" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.090911" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.090891" elapsed="0.001911"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.120298" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.120347" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.092944" elapsed="0.027427"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.122251" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.120467" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.120433" elapsed="0.001900"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.122367" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:28.122589" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.122633" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.067035" elapsed="0.055620"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.124865" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.123224" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.123206" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.125520" 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-07-28T01:54:28.125083" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.126173" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.125711" elapsed="0.000489"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.126249" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.126430" 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-07-28T01:54:28.122882" elapsed="0.003595"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.126640" 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-07-28T01:54:28.066410" elapsed="0.060689"/>
</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-07-28T01:54:28.016168" elapsed="0.110992"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.009216" elapsed="0.118064"/>
</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-07-28T01:54:28.138282" 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-07-28T01:54:28.138423" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:28.138139" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.139036" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eee80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.138628" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.139517" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.139218" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.139973" 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-07-28T01:54:28.139699" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.140422" 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-07-28T01:54:28.140147" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.141274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:28.140611" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.141822" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.141475" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.142396" 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-07-28T01:54:28.142064" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.143043" 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-07-28T01:54:28.142613" elapsed="0.000473"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.143667" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:28.143286" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.144275" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:28.143905" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.144843" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eee80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.144496" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:28.137805" elapsed="0.007136"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.145509" 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-07-28T01:54:28.145091" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.145947" 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-07-28T01:54:28.145692" 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-07-28T01:54:28.154004" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.153699" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.160787" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.161006" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.161117" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.154162" elapsed="0.006980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.161611" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.161304" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.164833" 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-07-28T01:54:28.161879" 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-07-28T01:54:28.167669" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.165062" elapsed="0.002676"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.165035" elapsed="0.002734"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.171310" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.171356" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.167969" elapsed="0.003410"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.173220" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.171469" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.171435" elapsed="0.001864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.173331" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.173545" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.173589" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.153362" elapsed="0.020250"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.175755" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.174150" elapsed="0.001652"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.174133" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.176367" 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-07-28T01:54:28.175968" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.176937" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.176567" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.177013" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:28.177193" 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-07-28T01:54:28.173821" elapsed="0.003397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.177372" elapsed="0.000431"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:28.152800" elapsed="0.025071"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.185910" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.185611" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.201663" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.202307" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.202747" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.186069" elapsed="0.016716"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.203373" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.203015" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.207028" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.203661" elapsed="0.004689"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.211006" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.208505" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.208473" elapsed="0.002636"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.244896" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.244946" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.211305" elapsed="0.033676"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.246845" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.245066" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.245045" elapsed="0.001894"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.246974" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:28.247176" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.247220" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.185216" elapsed="0.062026"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.249449" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.247827" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.247809" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.250107" 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-07-28T01:54:28.249690" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.250695" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.250310" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.250771" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:28.250949" 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-07-28T01:54:28.247487" 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-07-28T01:54:28.251144" 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-07-28T01:54:28.184576" elapsed="0.067036"/>
</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-07-28T01:54:28.134404" elapsed="0.117277"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.127483" elapsed="0.124319"/>
</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-07-28T01:54:28.262840" 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-07-28T01:54:28.263005" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:28.262689" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.263615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.263193" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.264074" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.263796" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.264555" 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-07-28T01:54:28.264271" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.265037" 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-07-28T01:54:28.264767" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.265839" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.265221" elapsed="0.000649"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.266368" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.266026" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.266971" 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-07-28T01:54:28.266634" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.267525" 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-07-28T01:54:28.267168" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.268050" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:28.267723" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.268590" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.268248" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.269143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.268812" 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-07-28T01:54:28.262338" elapsed="0.006902"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.269831" 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-07-28T01:54:28.269388" elapsed="0.000474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.270262" 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-07-28T01:54:28.270023" 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-07-28T01:54:28.278339" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.278036" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.284967" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.285194" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.285300" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.278520" elapsed="0.006805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.285978" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.285587" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.289384" 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-07-28T01:54:28.286257" elapsed="0.003292"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.292328" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.289655" elapsed="0.002745"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.289627" elapsed="0.002807"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.296742" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.296822" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.292683" elapsed="0.004172"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.298967" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.296959" elapsed="0.002075"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.296933" elapsed="0.002125"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.299091" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.299288" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.299332" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.277709" elapsed="0.021646"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.301639" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.299979" elapsed="0.001716"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.299960" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.302273" 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-07-28T01:54:28.301866" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.302838" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.302486" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.302926" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:28.303103" 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-07-28T01:54:28.299599" elapsed="0.003530"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.303295" 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-07-28T01:54:28.277117" elapsed="0.026662"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.312006" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.311696" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.326509" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.327593" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.328258" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.312173" elapsed="0.016145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.329344" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.328752" elapsed="0.000695"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.335481" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.329823" elapsed="0.007952"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.340352" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.337881" elapsed="0.002539"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.337854" elapsed="0.002616"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.367538" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.367587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.340728" elapsed="0.026882"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.369465" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.367693" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.367674" elapsed="0.001876"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.369584" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:28.369788" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.369833" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.311241" elapsed="0.058615"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.372050" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.370419" elapsed="0.001677"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.370401" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.372770" 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-07-28T01:54:28.372271" elapsed="0.000528"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.373324" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.372964" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.373401" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:28.373608" 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-07-28T01:54:28.370080" elapsed="0.003554"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.373793" 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-07-28T01:54:28.310571" elapsed="0.063680"/>
</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-07-28T01:54:28.258993" elapsed="0.115316"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.251989" elapsed="0.122440"/>
</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-07-28T01:54:28.385418" 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-07-28T01:54:28.385583" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.385275" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.386183" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693c90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.385769" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.386668" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.386366" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.387124" 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-07-28T01:54:28.386849" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.387593" 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-07-28T01:54:28.387302" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.388423" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:28.387772" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.389209" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.388868" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.389842" 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-07-28T01:54:28.389511" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.390371" 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-07-28T01:54:28.390039" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.390907" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:28.390585" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.391433" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:28.391109" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.391974" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693c90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.391649" 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-07-28T01:54:28.384942" elapsed="0.007131"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.392668" 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-07-28T01:54:28.392224" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.393096" 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-07-28T01:54:28.392852" 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-07-28T01:54:28.401156" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.400846" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.408420" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.408706" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.408817" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.401314" elapsed="0.007528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.409262" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.409003" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.411559" 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-07-28T01:54:28.409467" 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-07-28T01:54:28.413550" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.411738" elapsed="0.001896"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.411719" elapsed="0.001956"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.417871" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.417936" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.413881" elapsed="0.004087"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.420474" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.418071" elapsed="0.002559"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.418045" elapsed="0.002638"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.420737" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:54:28.421024" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.421084" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.400493" elapsed="0.020622"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.423473" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.421885" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.421867" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.424091" 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-07-28T01:54:28.423692" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.424661" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.424277" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.424736" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.424913" 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-07-28T01:54:28.421494" 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-07-28T01:54:28.425095" 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-07-28T01:54:28.399919" elapsed="0.025641"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.433581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.433261" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.447990" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.448473" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.448797" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.433738" elapsed="0.015086"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.449239" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.448985" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.451766" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.449430" elapsed="0.003295"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.454551" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.452799" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.452780" elapsed="0.001842"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.486476" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.486534" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.454765" elapsed="0.031796"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.488601" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.486676" elapsed="0.001998"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.486648" elapsed="0.002053"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.488751" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:28.488971" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.489015" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.432887" elapsed="0.056150"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.491278" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.489670" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.489651" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.491957" 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-07-28T01:54:28.491512" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.492560" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.492146" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.492638" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.492821" 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-07-28T01:54:28.489283" elapsed="0.003563"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.493005" 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-07-28T01:54:28.432238" elapsed="0.061266"/>
</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-07-28T01:54:28.381634" elapsed="0.111959"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.374663" elapsed="0.119078"/>
</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-07-28T01:54:28.505131" 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-07-28T01:54:28.505340" 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-07-28T01:54:28.504957" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.505956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a5c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.505541" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.506436" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.506150" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.506936" 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-07-28T01:54:28.506652" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.507393" 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-07-28T01:54:28.507113" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.508135" 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-07-28T01:54:28.507586" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.508726" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.508335" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.509323" 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-07-28T01:54:28.508982" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.509880" 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-07-28T01:54:28.509536" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.510410" 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-07-28T01:54:28.510075" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.510955" 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-07-28T01:54:28.510623" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.511497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a5c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.511151" 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-07-28T01:54:28.504575" elapsed="0.007020"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.512139" 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-07-28T01:54:28.511744" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.512595" 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-07-28T01:54:28.512319" 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-07-28T01:54:28.520760" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.520369" elapsed="0.000429"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.527927" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.528158" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.528264" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.520931" elapsed="0.007359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.528848" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.528482" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.532095" 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-07-28T01:54:28.529133" elapsed="0.003039"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.534805" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.532269" elapsed="0.002606"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.532243" elapsed="0.002663"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.538544" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.538590" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.535147" elapsed="0.003467"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.540436" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.538688" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.538669" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.540588" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:28.540787" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.540844" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.520041" elapsed="0.020826"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.543164" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.541424" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.541407" elapsed="0.001824"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.543833" 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-07-28T01:54:28.543391" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.544381" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.544020" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.544471" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:54:28.544682" 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-07-28T01:54:28.541077" elapsed="0.003641"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.544876" 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-07-28T01:54:28.519464" elapsed="0.025873"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.553350" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.553039" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.567876" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.569112" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.569874" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.553536" elapsed="0.016419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.571024" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.570347" elapsed="0.000804"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.575837" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.571541" elapsed="0.005667"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.579847" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.577310" elapsed="0.002603"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.577283" elapsed="0.002662"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.612831" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.612878" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.580156" elapsed="0.032745"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.614739" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.612992" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.612972" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.614853" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:28.615067" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.615111" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.552650" elapsed="0.062483"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.617390" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.615719" elapsed="0.001716"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.615701" elapsed="0.001770"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.618053" 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-07-28T01:54:28.617632" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.618631" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.618241" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.618708" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:28.618887" 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-07-28T01:54:28.615365" 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-07-28T01:54:28.619080" 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-07-28T01:54:28.551975" elapsed="0.067580"/>
</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-07-28T01:54:28.501218" elapsed="0.118394"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.494097" elapsed="0.125634"/>
</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-07-28T01:54:28.631075" 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-07-28T01:54:28.631222" 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-07-28T01:54:28.630921" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.631873" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.631448" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.632344" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.632063" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.632842" 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-07-28T01:54:28.632557" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.633297" 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-07-28T01:54:28.633028" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.634038" 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-07-28T01:54:28.633495" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.634580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.634224" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.635162" 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-07-28T01:54:28.634838" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.635729" 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-07-28T01:54:28.635367" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.636250" 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-07-28T01:54:28.635923" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.636822" 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-07-28T01:54:28.636480" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.637352" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.637020" 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-07-28T01:54:28.630580" elapsed="0.006868"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.638064" 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-07-28T01:54:28.637657" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.638497" 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-07-28T01:54:28.638244" 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-07-28T01:54:28.646680" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.646341" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.659262" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.659497" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.659658" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.646836" elapsed="0.012881"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.660863" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.660097" elapsed="0.000870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.666177" 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-07-28T01:54:28.661308" elapsed="0.004994"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.670042" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.666561" elapsed="0.003530"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.666514" elapsed="0.003600"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.672889" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.672935" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.670267" elapsed="0.002691"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.674768" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.673032" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.673013" elapsed="0.001834"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.674880" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.675087" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.675130" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.645980" elapsed="0.029173"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.677350" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.675719" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.675701" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.678048" 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-07-28T01:54:28.677608" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.678617" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.678237" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.678692" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.678873" 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-07-28T01:54:28.675363" 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-07-28T01:54:28.679067" 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-07-28T01:54:28.645364" elapsed="0.034235"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.687749" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.687417" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.701553" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.702680" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.703356" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.687908" elapsed="0.015511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.704497" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.703830" elapsed="0.000776"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.709373" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.704944" elapsed="0.005453"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.712226" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.710485" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.710464" elapsed="0.001833"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.742268" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.742316" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.712478" elapsed="0.029862"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.744149" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.742421" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.742402" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.744262" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:28.744494" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.744539" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.687029" elapsed="0.057533"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.746709" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.745115" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.745098" elapsed="0.001678"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.747331" 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-07-28T01:54:28.746924" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.747892" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.747538" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.747968" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.748147" 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-07-28T01:54:28.744784" 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-07-28T01:54:28.748331" 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-07-28T01:54:28.686378" elapsed="0.062438"/>
</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-07-28T01:54:28.627187" elapsed="0.121687"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.620022" elapsed="0.128976"/>
</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-07-28T01:54:28.760145" 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-07-28T01:54:28.760300" 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-07-28T01:54:28.759999" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.760980" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.760559" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.761444" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.761162" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.761919" 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-07-28T01:54:28.761649" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.762373" 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-07-28T01:54:28.762094" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.763134" 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-07-28T01:54:28.762566" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.763679" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.763322" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.764273" 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-07-28T01:54:28.763934" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.764855" 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-07-28T01:54:28.764521" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.765373" 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-07-28T01:54:28.765062" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.765918" 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-07-28T01:54:28.765584" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.766469" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.766124" 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-07-28T01:54:28.759656" elapsed="0.006913"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.767116" 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-07-28T01:54:28.766720" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.767555" 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-07-28T01:54:28.767297" 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-07-28T01:54:28.775649" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.775324" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.783991" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.784291" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.784500" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.775805" elapsed="0.008735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.785129" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.784769" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.788317" 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-07-28T01:54:28.785392" elapsed="0.003096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.791119" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.788592" elapsed="0.002597"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.788564" elapsed="0.002658"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.795280" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.795326" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.791424" elapsed="0.003924"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.797180" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.795423" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.795404" elapsed="0.001855"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.797292" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:28.797513" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:28.797568" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.774994" elapsed="0.022603"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.799785" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.798165" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.798148" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.800432" 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-07-28T01:54:28.800003" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.801024" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.800644" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.801101" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:28.801285" 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-07-28T01:54:28.797832" elapsed="0.003479"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.801488" 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-07-28T01:54:28.774398" elapsed="0.027551"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.809833" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.809524" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.830943" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.832270" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:28.832974" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.809989" elapsed="0.023023"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.833605" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.833243" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.836332" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:28.833861" elapsed="0.003471"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.839206" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.837417" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.837393" elapsed="0.001889"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.937205" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.937274" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:28.839437" elapsed="0.097862"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:28.939352" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.937432" elapsed="0.001981"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.937400" elapsed="0.002042"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:28.939499" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:28.939737" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:28.939781" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:28.809129" elapsed="0.130675"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.942118" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.940518" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.940498" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.942860" 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-07-28T01:54:28.942346" elapsed="0.000542"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.943412" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:28.943055" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:28.943506" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:28.943688" 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-07-28T01:54:28.940081" elapsed="0.003632"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:28.943875" elapsed="0.000473"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:28.808507" elapsed="0.135911"/>
</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-07-28T01:54:28.756284" elapsed="0.188214"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.749313" elapsed="0.195320"/>
</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-07-28T01:54:28.955780" 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-07-28T01:54:28.955966" 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-07-28T01:54:28.955627" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:28.956638" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38424d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:28.956153" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.957108" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:28.956821" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.957578" 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-07-28T01:54:28.957288" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:28.958036" 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-07-28T01:54:28.957757" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.958818" 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-07-28T01:54:28.958220" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.959353" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.959013" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.960059" 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-07-28T01:54:28.959710" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.960637" 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-07-28T01:54:28.960259" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.961276" 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-07-28T01:54:28.960832" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.961813" 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-07-28T01:54:28.961491" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.962331" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38424d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:28.962010" 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-07-28T01:54:28.955271" elapsed="0.007157"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.963000" 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-07-28T01:54:28.962600" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.963427" 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-07-28T01:54:28.963184" 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-07-28T01:54:28.971617" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:28.971283" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:28.985303" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:28.985612" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:28.985854" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:28.971778" elapsed="0.014138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.986910" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:28.986272" elapsed="0.000743"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:28.992073" 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-07-28T01:54:28.987345" elapsed="0.005037"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:28.996653" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:28.992599" elapsed="0.004108"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.992553" elapsed="0.004178"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:28.999506" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:28.999553" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:28.996884" elapsed="0.002692"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:29.001386" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:28.999651" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:28.999632" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:29.001514" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:29.001727" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:29.001771" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:28.970824" elapsed="0.030969"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.003978" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.002354" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.002327" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.004692" 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-07-28T01:54:29.004192" elapsed="0.000534"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.005251" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:29.004889" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:29.005326" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:29.005521" 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-07-28T01:54:29.002015" elapsed="0.003531"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:29.005704" 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-07-28T01:54:28.970215" elapsed="0.035963"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.014093" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:29.013794" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.028876" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:29.029345" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:29.029674" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:29.014262" elapsed="0.015439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.030132" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.029875" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.032792" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:29.030322" elapsed="0.003479"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.035654" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.033876" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.033857" elapsed="0.001868"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.064835" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:29.064883" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:29.035866" elapsed="0.029041"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:29.066755" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:29.064987" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.064967" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:29.066870" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:29.067075" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:29.067119" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:29.013383" elapsed="0.053759"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.069372" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.067729" elapsed="0.001687"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.067709" elapsed="0.001729"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.070054" 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-07-28T01:54:29.069634" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.070639" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:29.070254" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:29.070715" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:29.070893" 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-07-28T01:54:29.067368" 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-07-28T01:54:29.071223" 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-07-28T01:54:29.012754" elapsed="0.058945"/>
</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-07-28T01:54:28.951925" elapsed="0.119829"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:28.944966" elapsed="0.126915"/>
</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-07-28T01:54:29.083194" 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-07-28T01:54:29.083359" 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-07-28T01:54:29.083050" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.083982" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ad40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.083555" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.084504" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.084164" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.084962" 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-07-28T01:54:29.084681" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.085428" 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-07-28T01:54:29.085149" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.086268" 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-07-28T01:54:29.085636" elapsed="0.000664"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.086828" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.086471" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.087421" 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-07-28T01:54:29.087081" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.087986" 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-07-28T01:54:29.087644" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.088605" 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-07-28T01:54:29.088181" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.089150" 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-07-28T01:54:29.088818" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.089708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ad40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.089350" elapsed="0.000401"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.082677" elapsed="0.007130"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.090362" 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-07-28T01:54:29.089957" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.090815" 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-07-28T01:54:29.090559" 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-07-28T01:54:29.100881" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:29.100560" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.108417" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:29.108762" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:29.108928" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:29.101051" elapsed="0.007912"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.109559" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.109184" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.112799" 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-07-28T01:54:29.109833" elapsed="0.003110"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.115580" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.113046" elapsed="0.002604"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.113017" elapsed="0.002665"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.119809" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:29.119886" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:29.115891" elapsed="0.004027"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:29.121928" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:29.120021" elapsed="0.001963"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.119996" elapsed="0.002011"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:29.122040" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:29.122240" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:29.122284" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:29.100168" elapsed="0.022139"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.124505" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.122862" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.122844" elapsed="0.001729"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.125121" 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-07-28T01:54:29.124720" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.125671" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:29.125307" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:29.125746" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:29.125924" 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-07-28T01:54:29.122534" elapsed="0.003415"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:29.126105" 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-07-28T01:54:29.099576" elapsed="0.026999"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.134498" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:29.134175" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.148783" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:29.149479" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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-07-28T01:54:29.149899" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:29.134654" elapsed="0.015282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.150557" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.150157" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.154182" 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;658000000&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;152000000&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;693000000&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;733000000&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;773000000&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;817000000&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;152000000&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;252000000&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;860000000&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;298000000&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;896000000&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;340000000&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;936000000&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;378000000&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;981000000&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;422000000&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;11&lt;/second&gt;&lt;nanosecond&gt;22000000&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;62000000&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;965000000&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;287000000&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;1000000&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;330000000&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;42000000&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;373000000&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;81000000&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;407000000&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;447000000&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;497000000&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;541000000&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;131000000&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;575000000&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;609000000&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;548000000&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;598000000&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;126000000&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;637000000&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;713000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;676000000&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;716000000&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;757000000&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;800000000&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;793000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;844000000&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;827000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;162000000&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;888000000&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;866000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;203000000&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;926000000&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;915000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;240000000&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;957000000&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;10&lt;/second&gt;&lt;nanosecond&gt;7000000&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;10&lt;/second&gt;&lt;nanosecond&gt;42000000&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;73000000&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;502000000&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;467000000&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-07-28T01:54:29.150824" elapsed="0.004710"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.158198" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.155634" elapsed="0.002633"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.155608" elapsed="0.002690"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.187844" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:29.187891" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:29.158510" elapsed="0.029405"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:29.189803" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:29.187994" elapsed="0.001875"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.187975" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:29.189927" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:29.190122" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:29.190166" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:29.133804" elapsed="0.056385"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:29.192420" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:29.190775" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:29.190757" elapsed="0.001745"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.193073" 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-07-28T01:54:29.192657" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.193643" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:29.193261" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:29.193718" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:29.193908" 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-07-28T01:54:29.190417" 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-07-28T01:54:29.194090" 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-07-28T01:54:29.133157" elapsed="0.061408"/>
</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-07-28T01:54:29.079282" elapsed="0.115339"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:29.072184" elapsed="0.122580"/>
</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-07-28T01:54:29.195987" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.195726" elapsed="0.000305"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.199530" 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-07-28T01:54:29.199692" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.199372" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.200345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.199875" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.200880" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.200549" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.201340" 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-07-28T01:54:29.201060" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.201820" 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-07-28T01:54:29.201531" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.202610" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.201993" elapsed="0.000647"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.203169" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.202796" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.203694" 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-07-28T01:54:29.203367" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.204239" 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-07-28T01:54:29.203899" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.204764" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.204435" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.205266" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.204961" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.205800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.205476" 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-07-28T01:54:29.199038" elapsed="0.006860"/>
</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-07-28T01:54:29.213703" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.213426" elapsed="0.000336"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.224972" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.225055" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.225183" 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-07-28T01:54:29.213891" elapsed="0.011327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.228253" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.225479" elapsed="0.002835"/>
</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-07-28T01:54:29.212973" elapsed="0.015421"/>
</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-07-28T01:54:29.206049" elapsed="0.022441"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.195597" elapsed="0.032969"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.229297" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.228940" 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-07-28T01:54:29.234268" 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-07-28T01:54:29.234513" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.234068" elapsed="0.000487"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.235328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.234779" elapsed="0.000589"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.236012" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.235599" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.236722" 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-07-28T01:54:29.236307" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.237357" 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-07-28T01:54:29.236968" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.238517" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.237632" elapsed="0.000930"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.239238" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.238783" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.239982" 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-07-28T01:54:29.239541" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.240743" 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-07-28T01:54:29.240270" elapsed="0.000552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.241485" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.241031" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.242224" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.241770" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.242960" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.242517" elapsed="0.000515"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.233606" elapsed="0.009502"/>
</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-07-28T01:54:29.253138" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.252874" elapsed="0.000322"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.264022" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.264114" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.264255" 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-07-28T01:54:29.253325" elapsed="0.010956"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.268823" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.264439" elapsed="0.004480"/>
</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-07-28T01:54:29.252405" elapsed="0.016639"/>
</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-07-28T01:54:29.243315" elapsed="0.025871"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.228739" elapsed="0.040534"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.270375" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.269823" 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-07-28T01:54:29.275220" 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-07-28T01:54:29.275404" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.275076" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.276007" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.275612" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.276529" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.276223" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.276993" 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-07-28T01:54:29.276712" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.277468" 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-07-28T01:54:29.277167" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.278237" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.277655" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.278750" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.278420" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.279273" 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-07-28T01:54:29.278956" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.279804" 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-07-28T01:54:29.279478" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.280327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.280005" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.280853" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.280536" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.281362" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.281047" 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-07-28T01:54:29.274743" elapsed="0.006728"/>
</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-07-28T01:54:29.288837" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.288587" elapsed="0.000342"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.297776" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.297875" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.298002" 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-07-28T01:54:29.289058" elapsed="0.008978"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.301407" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.298258" elapsed="0.003244"/>
</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-07-28T01:54:29.288118" elapsed="0.013471"/>
</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-07-28T01:54:29.281636" elapsed="0.020030"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.269517" elapsed="0.032205"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.302443" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.302077" elapsed="0.000449"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.307562" 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-07-28T01:54:29.307793" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.307353" elapsed="0.000482"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.308681" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.308060" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.309139" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.308861" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.309658" 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-07-28T01:54:29.309314" elapsed="0.000370"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.310117" 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-07-28T01:54:29.309847" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.310972" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.310304" elapsed="0.000698"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.311516" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.311160" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.312035" 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-07-28T01:54:29.311716" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.312580" 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-07-28T01:54:29.312254" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.313081" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.312784" elapsed="0.000341"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.313671" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.313332" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.314185" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.313868" 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-07-28T01:54:29.306869" elapsed="0.007411"/>
</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-07-28T01:54:29.321897" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.321630" elapsed="0.000329"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.332920" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.333062" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.333273" 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-07-28T01:54:29.322088" elapsed="0.011242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.338617" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.333747" elapsed="0.004979"/>
</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-07-28T01:54:29.321143" elapsed="0.017717"/>
</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-07-28T01:54:29.314438" elapsed="0.024550"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.301872" elapsed="0.037206"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.340278" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.339637" elapsed="0.000750"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.346242" 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-07-28T01:54:29.346375" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.346106" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.347021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949cb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.346577" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.347548" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.347205" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.348013" 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-07-28T01:54:29.347737" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.348510" 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-07-28T01:54:29.348215" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.349334" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.348688" elapsed="0.000678"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.349896" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.349539" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.350413" 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-07-28T01:54:29.350095" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.350947" 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-07-28T01:54:29.350633" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.351501" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.351147" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.352013" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.351700" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.352570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949cb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.352239" 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-07-28T01:54:29.345760" elapsed="0.006907"/>
</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-07-28T01:54:29.360075" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.359818" elapsed="0.000350"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.370601" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.370711" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.370889" 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-07-28T01:54:29.360310" elapsed="0.010616"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.374152" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.371148" elapsed="0.003066"/>
</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-07-28T01:54:29.359357" elapsed="0.014938"/>
</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-07-28T01:54:29.352817" elapsed="0.021554"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.339303" elapsed="0.035123"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.375148" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.374793" 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-07-28T01:54:29.380216" 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-07-28T01:54:29.380447" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.379975" elapsed="0.000539"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.381134" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.380697" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.381626" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.381320" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.382080" 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-07-28T01:54:29.381808" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.382547" 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-07-28T01:54:29.382260" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.383386" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.382726" elapsed="0.000691"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.383916" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.383593" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.384471" 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-07-28T01:54:29.384145" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.384995" 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-07-28T01:54:29.384672" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.385530" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.385188" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.386052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.385739" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.386672" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.386320" 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-07-28T01:54:29.379501" elapsed="0.007270"/>
</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-07-28T01:54:29.394171" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.393908" elapsed="0.000369"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.403108" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.403196" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.403341" 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-07-28T01:54:29.394410" elapsed="0.008969"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.406711" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.403691" elapsed="0.003083"/>
</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-07-28T01:54:29.393401" elapsed="0.013455"/>
</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-07-28T01:54:29.386923" elapsed="0.020010"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.374609" elapsed="0.032380"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.407709" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.407323" elapsed="0.000449"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.412712" 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-07-28T01:54:29.412912" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.412510" elapsed="0.000443"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.413782" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.413171" elapsed="0.000650"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.414436" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.414041" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.415094" 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-07-28T01:54:29.414712" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.415773" 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-07-28T01:54:29.415360" elapsed="0.000449"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.417087" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.416018" elapsed="0.001111"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.417886" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.417353" elapsed="0.000607"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.418673" 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-07-28T01:54:29.418194" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.419402" 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-07-28T01:54:29.418949" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.420196" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.419702" elapsed="0.000616"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.420896" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.420567" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.421411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.421095" 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-07-28T01:54:29.411952" elapsed="0.009575"/>
</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-07-28T01:54:29.428820" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.428561" elapsed="0.000322"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.438810" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.438874" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.438970" 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-07-28T01:54:29.429015" elapsed="0.009981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.442352" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.439159" elapsed="0.003327"/>
</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-07-28T01:54:29.428094" elapsed="0.014532"/>
</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-07-28T01:54:29.421675" elapsed="0.021080"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.407138" elapsed="0.035709"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.443998" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.443374" elapsed="0.000769"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.450121" 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-07-28T01:54:29.450256" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.449984" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.450952" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eb60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.450494" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.451425" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.451140" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.451912" 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-07-28T01:54:29.451629" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.452404" 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-07-28T01:54:29.452122" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.453353" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.452601" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.453889" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.453560" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.454403" 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-07-28T01:54:29.454090" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.454936" 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-07-28T01:54:29.454617" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.455439" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.455130" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.455974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.455658" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.456547" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eb60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.456209" 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-07-28T01:54:29.449640" elapsed="0.007008"/>
</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-07-28T01:54:29.463998" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.463739" elapsed="0.000356"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.474786" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.474926" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.475202" 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-07-28T01:54:29.464228" elapsed="0.011012"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.479721" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.475507" elapsed="0.004319"/>
</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-07-28T01:54:29.463278" elapsed="0.016681"/>
</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-07-28T01:54:29.456800" elapsed="0.023329"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.443080" elapsed="0.037144"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.481383" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.480797" elapsed="0.000725"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.489012" 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-07-28T01:54:29.489211" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.488872" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.489862" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.489401" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.490328" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.490046" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.490804" 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-07-28T01:54:29.490525" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.491260" 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-07-28T01:54:29.490989" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.492231" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.491440" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.492815" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.492426" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.493327" 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-07-28T01:54:29.493015" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.493863" 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-07-28T01:54:29.493539" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.494370" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.494061" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.494898" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.494583" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.495408" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.495096" 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-07-28T01:54:29.488432" elapsed="0.007095"/>
</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-07-28T01:54:29.502987" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.502714" elapsed="0.000410"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.513890" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.513989" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.514133" 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-07-28T01:54:29.503284" elapsed="0.010886"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.517543" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.514429" elapsed="0.003182"/>
</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-07-28T01:54:29.502213" elapsed="0.015485"/>
</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-07-28T01:54:29.495679" elapsed="0.022100"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.480488" elapsed="0.037348"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.518561" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.518182" 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-07-28T01:54:29.523542" 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-07-28T01:54:29.523753" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.523321" elapsed="0.000472"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.524711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c450&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.524038" elapsed="0.000720"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.525374" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.524973" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.526037" 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-07-28T01:54:29.525648" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.526699" 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-07-28T01:54:29.526288" elapsed="0.000447"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.528052" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.526946" elapsed="0.001152"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.528822" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.528327" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.529577" 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-07-28T01:54:29.529104" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.530335" 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-07-28T01:54:29.529865" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.531137" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.530698" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.531887" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.531420" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.532689" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c450&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.532225" elapsed="0.000518"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.522839" elapsed="0.009960"/>
</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-07-28T01:54:29.540117" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.539843" elapsed="0.000338"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.551117" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.551184" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.551276" 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-07-28T01:54:29.540313" elapsed="0.010988"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.556267" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.551500" elapsed="0.004865"/>
</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-07-28T01:54:29.539376" elapsed="0.017158"/>
</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-07-28T01:54:29.532949" elapsed="0.023709"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.517997" elapsed="0.038748"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.557917" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.557323" 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-07-28T01:54:29.563000" 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-07-28T01:54:29.563129" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.562862" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.563749" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.563313" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.564243" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.563933" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.564719" 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-07-28T01:54:29.564424" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.565172" 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-07-28T01:54:29.564900" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.566092" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.565345" elapsed="0.000778"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.566620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.566280" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.567134" 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-07-28T01:54:29.566818" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.567669" 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-07-28T01:54:29.567329" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.568199" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.567863" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.568730" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.568400" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.569253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.568942" 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-07-28T01:54:29.562525" elapsed="0.006828"/>
</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-07-28T01:54:29.576724" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.576471" elapsed="0.000317"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.590053" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.590189" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.590317" 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-07-28T01:54:29.576915" elapsed="0.013438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.593568" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.590600" elapsed="0.003031"/>
</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-07-28T01:54:29.576018" elapsed="0.017700"/>
</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-07-28T01:54:29.569520" elapsed="0.024275"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.557033" elapsed="0.036818"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.594550" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.594176" 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-07-28T01:54:29.599526" 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-07-28T01:54:29.599716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.599316" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.600615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.600001" elapsed="0.000654"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.601260" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.600872" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.601924" 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-07-28T01:54:29.601533" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.602595" 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-07-28T01:54:29.602176" elapsed="0.000457"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.603894" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.602849" elapsed="0.001088"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.604689" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.604199" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.605417" 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-07-28T01:54:29.604977" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.606169" 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-07-28T01:54:29.605719" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.606936" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.606438" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.607679" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.607211" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.608451" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.607960" elapsed="0.000572"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.598847" elapsed="0.009763"/>
</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-07-28T01:54:29.616045" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.615744" elapsed="0.000422"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.627374" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.627439" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.627552" 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-07-28T01:54:29.616301" elapsed="0.011280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.633016" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.628015" elapsed="0.005099"/>
</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-07-28T01:54:29.615255" elapsed="0.017993"/>
</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-07-28T01:54:29.608764" elapsed="0.024610"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.593991" elapsed="0.039513"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.634653" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.634049" 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-07-28T01:54:29.639252" 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-07-28T01:54:29.639385" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.639112" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.640026" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.639585" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.640510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.640210" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.641000" 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-07-28T01:54:29.640723" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.641469" 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-07-28T01:54:29.641181" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.642312" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:29.641651" elapsed="0.000691"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.642840" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.642517" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.643352" 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-07-28T01:54:29.643039" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.643883" 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-07-28T01:54:29.643565" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.644478" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.644146" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.645001" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:29.644682" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.645541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.645204" 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-07-28T01:54:29.638775" elapsed="0.006867"/>
</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-07-28T01:54:29.652995" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:29.652743" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.663637" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.663699" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.663790" 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-07-28T01:54:29.653184" elapsed="0.010631"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.668103" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.664035" elapsed="0.004166"/>
</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-07-28T01:54:29.652288" elapsed="0.016045"/>
</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-07-28T01:54:29.645793" elapsed="0.022692"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.633750" elapsed="0.034833"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.669701" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.669102" 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-07-28T01:54:29.677068" 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-07-28T01:54:29.677224" 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-07-28T01:54:29.676934" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.677864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.677402" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.678332" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.678051" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.678823" 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-07-28T01:54:29.678537" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.679279" 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-07-28T01:54:29.679003" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.680146" 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-07-28T01:54:29.679470" elapsed="0.000706"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.680666" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.680333" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.681167" 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-07-28T01:54:29.680861" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.681692" 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-07-28T01:54:29.681359" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.682181" 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-07-28T01:54:29.681883" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.682697" 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-07-28T01:54:29.682375" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.683197" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.682893" 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-07-28T01:54:29.676538" elapsed="0.006754"/>
</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-07-28T01:54:29.690601" 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-07-28T01:54:29.690333" elapsed="0.000330"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.700774" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.700888" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.701001" 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-07-28T01:54:29.690791" elapsed="0.010238"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.704316" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.701188" elapsed="0.003172"/>
</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-07-28T01:54:29.689898" elapsed="0.014519"/>
</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-07-28T01:54:29.683439" elapsed="0.021055"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.668813" elapsed="0.035723"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.705605" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.705022" 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-07-28T01:54:29.711582" 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-07-28T01:54:29.711757" 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-07-28T01:54:29.711374" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.712598" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b3731760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.712026" elapsed="0.000612"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.713232" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.712849" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.713876" 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-07-28T01:54:29.713498" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.714513" 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-07-28T01:54:29.714121" elapsed="0.000428"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.715652" 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-07-28T01:54:29.714756" elapsed="0.000940"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.716376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.715933" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.717104" 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-07-28T01:54:29.716672" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.717833" 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-07-28T01:54:29.717372" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.718548" 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-07-28T01:54:29.718103" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.719259" 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-07-28T01:54:29.718831" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.720021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b3731760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.719555" elapsed="0.000526"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.710912" elapsed="0.009245"/>
</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-07-28T01:54:29.727566" 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-07-28T01:54:29.727304" elapsed="0.000357"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.737607" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.737669" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.737758" 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-07-28T01:54:29.727790" elapsed="0.009993"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.740027" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.737941" elapsed="0.002129"/>
</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-07-28T01:54:29.726868" elapsed="0.013259"/>
</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-07-28T01:54:29.720365" elapsed="0.019815"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.704732" elapsed="0.035487"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.740911" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.740444" elapsed="0.000565"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.748726" 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-07-28T01:54:29.748853" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.748552" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.749417" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.749032" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.749901" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.749613" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.750344" 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-07-28T01:54:29.750077" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.750807" 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-07-28T01:54:29.750533" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.751574" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.750980" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.752108" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.751776" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.752650" 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-07-28T01:54:29.752303" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.753157" 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-07-28T01:54:29.752842" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.753684" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.753362" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.754225" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.753918" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.754761" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.754423" 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-07-28T01:54:29.747729" elapsed="0.007128"/>
</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-07-28T01:54:29.762242" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.761992" elapsed="0.000318"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.771064" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.771147" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.771290" 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-07-28T01:54:29.762438" elapsed="0.008894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.774613" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.771640" elapsed="0.003035"/>
</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-07-28T01:54:29.761543" elapsed="0.013212"/>
</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-07-28T01:54:29.755006" elapsed="0.019824"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.740317" elapsed="0.034568"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.775596" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.775214" 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-07-28T01:54:29.780636" 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-07-28T01:54:29.780823" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.780427" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.781643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.781072" elapsed="0.000623"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.782307" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.781909" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.783040" 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-07-28T01:54:29.782634" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.783725" 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-07-28T01:54:29.783306" elapsed="0.000456"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.784826" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.784009" elapsed="0.000860"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.785584" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.785102" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.786325" 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-07-28T01:54:29.785874" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.787070" 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-07-28T01:54:29.786619" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.787813" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.787352" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.788598" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.788146" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.789333" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.788889" elapsed="0.000502"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.779936" elapsed="0.009550"/>
</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-07-28T01:54:29.797838" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.797522" elapsed="0.000377"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.809522" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.809586" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.809789" 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-07-28T01:54:29.798027" elapsed="0.011818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.815099" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.810217" elapsed="0.004999"/>
</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-07-28T01:54:29.797063" elapsed="0.018286"/>
</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-07-28T01:54:29.789711" elapsed="0.025788"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.775021" elapsed="0.040646"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.816890" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.816260" elapsed="0.000751"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.822511" 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-07-28T01:54:29.822637" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.822352" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.823214" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.822815" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.823701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.823401" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.824183" 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-07-28T01:54:29.823903" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.824686" 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-07-28T01:54:29.824383" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.825414" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.824861" elapsed="0.000583"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.825939" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.825615" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.826466" 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-07-28T01:54:29.826133" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.826981" 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-07-28T01:54:29.826659" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.827496" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.827171" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.828012" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.827690" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.828553" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.828220" 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-07-28T01:54:29.822019" elapsed="0.006630"/>
</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-07-28T01:54:29.836221" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.835965" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.846616" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.846758" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.846888" 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-07-28T01:54:29.836404" elapsed="0.010520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.850191" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.847144" elapsed="0.003109"/>
</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-07-28T01:54:29.835465" elapsed="0.014868"/>
</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-07-28T01:54:29.828797" elapsed="0.021611"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.815951" elapsed="0.034540"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.851174" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.850814" 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-07-28T01:54:29.856179" 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-07-28T01:54:29.856354" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.855980" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.857255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.856638" elapsed="0.000656"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.857945" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.857536" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.858606" 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-07-28T01:54:29.858194" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.859257" 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-07-28T01:54:29.858867" elapsed="0.000426"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.860538" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.859531" elapsed="0.001051"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.861263" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.860805" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.862035" 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-07-28T01:54:29.861586" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.862788" 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-07-28T01:54:29.862317" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.863569" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.863057" elapsed="0.000578"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.864372" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.863910" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.865020" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.864671" 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-07-28T01:54:29.855486" elapsed="0.009633"/>
</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-07-28T01:54:29.872754" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.872489" elapsed="0.000363"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.883138" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.883202" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.883304" 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-07-28T01:54:29.872984" elapsed="0.010346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.888352" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.883508" elapsed="0.004968"/>
</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-07-28T01:54:29.872022" elapsed="0.016593"/>
</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-07-28T01:54:29.865269" elapsed="0.023485"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.850635" elapsed="0.038211"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.889986" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.889373" 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-07-28T01:54:29.897342" 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-07-28T01:54:29.897482" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.897207" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.898092" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.897671" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.898576" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.898272" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.899051" 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-07-28T01:54:29.898768" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.899522" 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-07-28T01:54:29.899226" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.900424" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.899697" elapsed="0.000770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.900958" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.900626" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.901529" 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-07-28T01:54:29.901166" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.902072" 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-07-28T01:54:29.901739" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.902663" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.902324" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.903268" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.902864" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.903949" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.903534" elapsed="0.000461"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:29.896859" elapsed="0.007193"/>
</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-07-28T01:54:29.911654" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.911326" elapsed="0.000400"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.921732" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.921820" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.921944" 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-07-28T01:54:29.911879" elapsed="0.010100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.925809" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.922200" elapsed="0.003766"/>
</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-07-28T01:54:29.910878" elapsed="0.015217"/>
</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-07-28T01:54:29.904203" elapsed="0.022009"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.889070" elapsed="0.037228"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.927536" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.926842" elapsed="0.000798"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.936196" 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-07-28T01:54:29.936600" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.935768" elapsed="0.000863"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.937228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08950&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.936798" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.937715" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.937409" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.938190" 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-07-28T01:54:29.937905" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.938668" 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-07-28T01:54:29.938367" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.939616" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.938855" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.940159" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.939828" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.940703" 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-07-28T01:54:29.940354" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.941217" 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-07-28T01:54:29.940895" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.941770" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.941408" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.942313" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.941984" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.942848" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08950&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.942527" 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-07-28T01:54:29.934871" elapsed="0.008086"/>
</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-07-28T01:54:29.950321" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.950060" elapsed="0.000325"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:29.962339" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:29.962600" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:29.962821" 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-07-28T01:54:29.950531" elapsed="0.012348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.968073" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.963244" elapsed="0.004929"/>
</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-07-28T01:54:29.949613" elapsed="0.018692"/>
</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-07-28T01:54:29.943102" elapsed="0.025325"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.926553" elapsed="0.042038"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.969915" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:29.969241" elapsed="0.000795"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:29.976115" 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-07-28T01:54:29.976298" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.975904" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:29.977131" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:29.976578" elapsed="0.000593"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.977808" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:29.977384" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.978446" 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-07-28T01:54:29.978061" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:29.979147" 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-07-28T01:54:29.978760" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:29.980210" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.979394" elapsed="0.000860"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.980942" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.980493" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.981663" 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-07-28T01:54:29.981210" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.982383" 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-07-28T01:54:29.981935" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.983113" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:29.982681" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.983907" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:29.983388" elapsed="0.000589"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:29.984665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:29.984196" 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-07-28T01:54:29.975328" elapsed="0.009474"/>
</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-07-28T01:54:29.995054" level="INFO">&lt;?xml version="1.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-07-28T01:54:29.994699" elapsed="0.000490"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.005486" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.005544" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.005724" 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-07-28T01:54:29.995373" elapsed="0.010410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.010948" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.006140" elapsed="0.004909"/>
</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-07-28T01:54:29.994068" elapsed="0.017114"/>
</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-07-28T01:54:29.985015" elapsed="0.026293"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:54:29.968901" elapsed="0.042500"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.012683" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.011995" elapsed="0.000804"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.016731" 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-07-28T01:54:30.016860" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.016596" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.017489" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06937e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.017044" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.017963" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.017682" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.018422" 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-07-28T01:54:30.018144" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.018901" 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-07-28T01:54:30.018622" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.019857" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.019081" elapsed="0.000806"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.020377" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.020047" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.020918" 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-07-28T01:54:30.020596" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.021431" 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-07-28T01:54:30.021111" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.021954" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.021643" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.022484" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.022155" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.023049" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06937e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.022728" 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-07-28T01:54:30.016246" elapsed="0.006904"/>
</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-07-28T01:54:30.030616" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.030337" elapsed="0.000344"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.040121" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.040186" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.040278" 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-07-28T01:54:30.030812" elapsed="0.009492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.042566" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.040483" elapsed="0.002128"/>
</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-07-28T01:54:30.029895" elapsed="0.012774"/>
</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-07-28T01:54:30.023304" elapsed="0.019420"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.011672" elapsed="0.031093"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.043251" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.042996" 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-07-28T01:54:30.047716" 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-07-28T01:54:30.047919" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.047522" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.048825" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.048206" elapsed="0.000658"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.049489" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.049081" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.050126" 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-07-28T01:54:30.049744" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.050781" 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-07-28T01:54:30.050374" elapsed="0.000446"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.051922" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.051028" elapsed="0.000937"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.052682" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.052186" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.053409" 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-07-28T01:54:30.052962" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.054202" 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-07-28T01:54:30.053754" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.054925" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.054497" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.055655" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.055200" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.056425" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.055983" elapsed="0.000524"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.047039" elapsed="0.009549"/>
</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-07-28T01:54:30.063958" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.063683" elapsed="0.000334"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.076584" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.076696" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.076793" 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-07-28T01:54:30.064147" elapsed="0.012671"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.079059" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.076981" elapsed="0.002122"/>
</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-07-28T01:54:30.063224" elapsed="0.015937"/>
</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-07-28T01:54:30.056743" elapsed="0.022473"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.042866" elapsed="0.036390"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.079855" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.079507" elapsed="0.000400"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.086909" 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-07-28T01:54:30.087189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.086605" elapsed="0.000649"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.088544" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.087621" elapsed="0.000989"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.089594" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.088948" elapsed="0.000704"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.090671" 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-07-28T01:54:30.090009" elapsed="0.000736"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.091815" 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-07-28T01:54:30.091085" elapsed="0.000791"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.093063" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.092216" elapsed="0.000878"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.093582" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.093250" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.094095" 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-07-28T01:54:30.093777" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.094632" 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-07-28T01:54:30.094299" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.095121" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.094823" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.095651" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.095315" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.096184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.095863" 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-07-28T01:54:30.085820" elapsed="0.010462"/>
</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-07-28T01:54:30.103792" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.103466" elapsed="0.000424"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.115525" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.115664" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.115904" 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-07-28T01:54:30.104022" elapsed="0.011955"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.121294" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.116379" elapsed="0.005011"/>
</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-07-28T01:54:30.103008" elapsed="0.018546"/>
</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-07-28T01:54:30.096443" elapsed="0.025253"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.079358" elapsed="0.042430"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.122932" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.122328" elapsed="0.000718"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.128662" 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-07-28T01:54:30.128861" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.128417" elapsed="0.000484"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.129707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.129124" elapsed="0.000622"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.130355" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.129957" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.131018" 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-07-28T01:54:30.130631" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.131664" 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-07-28T01:54:30.131263" elapsed="0.000436"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.132841" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.131939" elapsed="0.000945"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.133587" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.133099" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.134302" 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-07-28T01:54:30.133859" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.135049" 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-07-28T01:54:30.134600" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.135819" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.135325" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.136624" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.136163" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.137144" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.136823" 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-07-28T01:54:30.127930" elapsed="0.009311"/>
</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-07-28T01:54:30.144673" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.144391" elapsed="0.000339"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.155098" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.155157" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.155246" 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-07-28T01:54:30.144858" elapsed="0.010412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.162003" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.155441" elapsed="0.006660"/>
</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-07-28T01:54:30.143948" elapsed="0.018280"/>
</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-07-28T01:54:30.137388" elapsed="0.024958"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.122018" elapsed="0.040416"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.163599" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.162994" elapsed="0.000771"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.167773" 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-07-28T01:54:30.167902" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.167624" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.168507" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323b50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.168082" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.168972" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.168698" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.169482" 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-07-28T01:54:30.169195" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.169941" 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-07-28T01:54:30.169672" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.170809" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.170126" elapsed="0.000713"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.171326" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.171007" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.171886" 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-07-28T01:54:30.171549" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.172413" 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-07-28T01:54:30.172080" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.172938" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.172633" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.173478" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.173145" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.173998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323b50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.173676" 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-07-28T01:54:30.167266" elapsed="0.006839"/>
</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-07-28T01:54:30.181444" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.181194" elapsed="0.000326"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.190964" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.191050" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.191188" 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-07-28T01:54:30.181647" elapsed="0.009577"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.194504" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.191516" elapsed="0.003062"/>
</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-07-28T01:54:30.180762" elapsed="0.013896"/>
</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-07-28T01:54:30.174254" elapsed="0.020478"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.162704" elapsed="0.032083"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.195486" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.195117" 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-07-28T01:54:30.200499" 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-07-28T01:54:30.200692" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.200293" elapsed="0.000439"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.201523" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.200943" elapsed="0.000620"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.202168" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.201776" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.202822" 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-07-28T01:54:30.202414" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.203472" 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-07-28T01:54:30.203067" elapsed="0.000444"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.204607" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.203746" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.205338" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.204901" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.206074" 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-07-28T01:54:30.205629" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.206803" 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-07-28T01:54:30.206344" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.207513" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.207072" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.208282" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.207838" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.208901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.208591" 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-07-28T01:54:30.199817" elapsed="0.009192"/>
</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-07-28T01:54:30.216474" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.216198" elapsed="0.000391"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.226806" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.226865" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.226954" 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-07-28T01:54:30.216745" elapsed="0.010234"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.231562" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.227138" elapsed="0.004551"/>
</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-07-28T01:54:30.215764" elapsed="0.016057"/>
</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-07-28T01:54:30.209157" elapsed="0.022801"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.194922" elapsed="0.037125"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.233235" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.232623" 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-07-28T01:54:30.238734" 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-07-28T01:54:30.238861" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.238589" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.239476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.239038" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.239995" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.239712" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.240482" 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-07-28T01:54:30.240184" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.240944" 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-07-28T01:54:30.240661" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.241857" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.241118" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.242373" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.242044" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.242920" 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-07-28T01:54:30.242598" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.243425" 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-07-28T01:54:30.243113" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.243984" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.243646" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.244565" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.244229" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.245121" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.244802" 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-07-28T01:54:30.238232" elapsed="0.006985"/>
</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-07-28T01:54:30.252715" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.252438" elapsed="0.000339"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.262129" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.262191" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.262281" 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-07-28T01:54:30.252905" elapsed="0.009401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.264726" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.262494" elapsed="0.002335"/>
</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-07-28T01:54:30.251991" elapsed="0.012984"/>
</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-07-28T01:54:30.245378" elapsed="0.019717"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.232266" elapsed="0.032916"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.266313" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.265720" 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-07-28T01:54:30.273495" 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-07-28T01:54:30.273625" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.273342" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.274302" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d5d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.273875" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.274791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.274502" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.275248" 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-07-28T01:54:30.274972" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.275751" 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-07-28T01:54:30.275429" elapsed="0.000348"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.276678" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.275930" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.277193" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.276867" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.277746" 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-07-28T01:54:30.277391" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.278267" 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-07-28T01:54:30.277946" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.278806" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.278482" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.279328" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.279012" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.279923" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d5d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.279547" 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-07-28T01:54:30.272995" elapsed="0.007028"/>
</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-07-28T01:54:30.290177" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.289812" elapsed="0.000458"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.300042" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.300136" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.300229" 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-07-28T01:54:30.290473" elapsed="0.009782"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.305075" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.300413" elapsed="0.004760"/>
</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-07-28T01:54:30.289168" elapsed="0.016135"/>
</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-07-28T01:54:30.280174" elapsed="0.025256"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.265401" elapsed="0.040156"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.306704" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.306088" 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-07-28T01:54:30.313634" 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-07-28T01:54:30.313760" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.313499" elapsed="0.000290"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.314350" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.313940" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.314837" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.314560" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.315280" 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-07-28T01:54:30.315014" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.315774" 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-07-28T01:54:30.315469" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.316706" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.315954" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.317223" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.316898" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.317760" 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-07-28T01:54:30.317426" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.318283" 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-07-28T01:54:30.317960" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.318818" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.318499" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.319339" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.319023" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.319897" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.319558" 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-07-28T01:54:30.313152" elapsed="0.006842"/>
</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-07-28T01:54:30.327425" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.327165" elapsed="0.000376"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.340412" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.340540" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.340737" 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-07-28T01:54:30.327718" elapsed="0.013078"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.346133" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.341184" elapsed="0.005057"/>
</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-07-28T01:54:30.326721" elapsed="0.019673"/>
</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-07-28T01:54:30.320148" elapsed="0.026409"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.305788" elapsed="0.040864"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.347841" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.347193" elapsed="0.000748"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.354057" 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-07-28T01:54:30.354205" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.353915" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.354844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f099e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.354388" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.355315" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.355028" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.355818" 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-07-28T01:54:30.355509" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.356274" 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-07-28T01:54:30.355998" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.357201" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.356451" elapsed="0.000780"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.357742" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.357396" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.358266" 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-07-28T01:54:30.357939" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.358842" 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-07-28T01:54:30.358480" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.359395" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.359083" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.359945" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.359624" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.360476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f099e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.360149" 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-07-28T01:54:30.353564" elapsed="0.007013"/>
</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-07-28T01:54:30.367971" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.367708" elapsed="0.000329"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.377877" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.377975" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.378110" 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-07-28T01:54:30.368171" elapsed="0.009976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.381896" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.378382" elapsed="0.003612"/>
</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-07-28T01:54:30.367222" elapsed="0.014905"/>
</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-07-28T01:54:30.360729" elapsed="0.021519"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.346894" elapsed="0.035449"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.383506" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.382903" elapsed="0.000753"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.391766" 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-07-28T01:54:30.392057" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.391285" elapsed="0.000839"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.392990" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.392503" elapsed="0.000515"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.393473" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.393174" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.393933" 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-07-28T01:54:30.393657" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.394386" 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-07-28T01:54:30.394113" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.395293" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.394579" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.395857" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.395499" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.396374" 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-07-28T01:54:30.396058" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.396958" 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-07-28T01:54:30.396599" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.397482" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.397155" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.398010" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.397694" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.398545" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.398211" 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-07-28T01:54:30.390517" elapsed="0.008128"/>
</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-07-28T01:54:30.406085" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.405823" elapsed="0.000330"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.416335" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.416505" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.416638" 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-07-28T01:54:30.406286" elapsed="0.010389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.419898" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.416903" elapsed="0.003057"/>
</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-07-28T01:54:30.405363" elapsed="0.014682"/>
</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-07-28T01:54:30.398796" elapsed="0.021338"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.382606" elapsed="0.037585"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.420893" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.420540" elapsed="0.000415"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.425842" 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-07-28T01:54:30.426034" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.425655" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.426901" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f09bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.426290" elapsed="0.000650"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.427600" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.427159" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.428254" 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-07-28T01:54:30.427861" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.428917" 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-07-28T01:54:30.428527" elapsed="0.000429"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.430174" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.429168" elapsed="0.001051"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.430929" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.430445" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.431712" 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-07-28T01:54:30.431224" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.432571" 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-07-28T01:54:30.432084" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.433087" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.432777" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.433618" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.433288" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.434133" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f09bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.433821" 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-07-28T01:54:30.425172" elapsed="0.009060"/>
</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-07-28T01:54:30.441687" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.441384" elapsed="0.000412"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.450940" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.451005" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.451098" 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-07-28T01:54:30.441945" elapsed="0.009181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.453439" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.451290" elapsed="0.002211"/>
</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-07-28T01:54:30.440939" elapsed="0.012621"/>
</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-07-28T01:54:30.434383" elapsed="0.019238"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.420335" elapsed="0.033327"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.454154" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.453901" 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-07-28T01:54:30.458182" 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-07-28T01:54:30.458367" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.457985" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.459256" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698b80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.458647" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.459957" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.459535" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.460638" 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-07-28T01:54:30.460209" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.461300" 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-07-28T01:54:30.460915" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.462672" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.461575" elapsed="0.001140"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.463421" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.462935" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.464208" 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-07-28T01:54:30.463763" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.465010" 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-07-28T01:54:30.464505" elapsed="0.000580"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.465842" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.465368" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.466594" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.466123" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.467317" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698b80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.466877" elapsed="0.000499"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.457516" elapsed="0.009958"/>
</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-07-28T01:54:30.475231" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.474970" elapsed="0.000325"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.484711" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.484856" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.485073" 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-07-28T01:54:30.475422" elapsed="0.009709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.490486" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.485532" elapsed="0.005056"/>
</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-07-28T01:54:30.474525" elapsed="0.016211"/>
</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-07-28T01:54:30.467772" elapsed="0.023085"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.453767" elapsed="0.037192"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.492139" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.491518" 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-07-28T01:54:30.498273" 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-07-28T01:54:30.498404" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.498137" elapsed="0.000295"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.499073" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a9d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.498607" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.499578" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.499252" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.500036" 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-07-28T01:54:30.499756" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.500507" 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-07-28T01:54:30.500211" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.501480" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.500693" elapsed="0.000818"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.501990" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.501674" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.502528" 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-07-28T01:54:30.502197" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.503040" 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-07-28T01:54:30.502719" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.503631" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.503273" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.504149" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.503830" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.504687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a9d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.504344" elapsed="0.000384"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.497793" elapsed="0.007001"/>
</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-07-28T01:54:30.512405" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.512154" elapsed="0.000331"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.521478" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.521616" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.521758" 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-07-28T01:54:30.512614" elapsed="0.009180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.525042" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.522013" elapsed="0.003101"/>
</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-07-28T01:54:30.511693" elapsed="0.013502"/>
</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-07-28T01:54:30.504944" elapsed="0.020327"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.491183" elapsed="0.034142"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.526023" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.525677" 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-07-28T01:54:30.531025" 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-07-28T01:54:30.531259" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.530839" elapsed="0.000463"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.532165" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.531549" elapsed="0.000655"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.532838" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.532413" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.533513" 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-07-28T01:54:30.533097" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.534160" 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-07-28T01:54:30.533772" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.535558" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.534402" elapsed="0.001201"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.536294" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.535823" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.537041" 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-07-28T01:54:30.536601" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.537798" 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-07-28T01:54:30.537389" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.538314" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.538005" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.538844" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.538522" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.539369" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.539039" 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-07-28T01:54:30.530341" elapsed="0.009141"/>
</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-07-28T01:54:30.546895" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.546632" elapsed="0.000376"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.559961" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.560028" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.560124" 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-07-28T01:54:30.547147" elapsed="0.013003"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.565085" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.560326" elapsed="0.004857"/>
</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-07-28T01:54:30.546173" elapsed="0.019141"/>
</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-07-28T01:54:30.539668" elapsed="0.025767"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.525483" elapsed="0.040089"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.566720" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.566116" 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-07-28T01:54:30.573747" 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-07-28T01:54:30.573897" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.573582" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.574533" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6ac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.574076" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.575007" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.574726" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.575477" 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-07-28T01:54:30.575193" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.576027" 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-07-28T01:54:30.575678" elapsed="0.000375"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.576937" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.576205" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.577476" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.577129" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.578060" 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-07-28T01:54:30.577684" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.578606" 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-07-28T01:54:30.578269" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.579150" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.578835" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.579714" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.579343" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.580225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6ac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.579920" 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-07-28T01:54:30.573226" elapsed="0.007106"/>
</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-07-28T01:54:30.587704" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.587421" elapsed="0.000343"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.598288" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.598374" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.598530" 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-07-28T01:54:30.587892" elapsed="0.010676"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.603155" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.598789" elapsed="0.004428"/>
</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-07-28T01:54:30.586985" elapsed="0.016313"/>
</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-07-28T01:54:30.580493" elapsed="0.022878"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.565811" elapsed="0.037614"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.604143" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.603800" 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-07-28T01:54:30.609055" 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-07-28T01:54:30.609286" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.608870" elapsed="0.000465"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.610151" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.609569" elapsed="0.000621"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.610810" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.610403" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.611428" 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-07-28T01:54:30.611057" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.612088" 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-07-28T01:54:30.611715" elapsed="0.000408"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.613363" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.612328" elapsed="0.001077"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.614080" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.613640" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.614801" 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-07-28T01:54:30.614349" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.615557" 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-07-28T01:54:30.615068" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.616244" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.615826" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.616921" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.616554" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.617437" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.617116" 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-07-28T01:54:30.608322" elapsed="0.009232"/>
</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-07-28T01:54:30.624813" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.624557" elapsed="0.000320"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.634087" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.634183" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.634276" 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-07-28T01:54:30.625004" elapsed="0.009297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.637130" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.634535" elapsed="0.002694"/>
</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-07-28T01:54:30.624109" elapsed="0.013289"/>
</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-07-28T01:54:30.617707" elapsed="0.019866"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.603620" elapsed="0.034043"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.638815" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.638190" 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-07-28T01:54:30.646121" 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-07-28T01:54:30.646305" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.645929" elapsed="0.000417"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.647171" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328f90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.646582" elapsed="0.000628"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.647888" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.647426" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.648578" 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-07-28T01:54:30.648152" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.649226" 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-07-28T01:54:30.648836" elapsed="0.000426"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.650447" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.649494" elapsed="0.001019"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.651207" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.650741" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.651979" 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-07-28T01:54:30.651527" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.652792" 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-07-28T01:54:30.652299" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.653541" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.653068" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.654273" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.653827" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.655024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328f90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.654574" elapsed="0.000513"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.645400" elapsed="0.009764"/>
</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-07-28T01:54:30.663142" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.662880" elapsed="0.000365"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.674438" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.674629" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.674874" 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-07-28T01:54:30.663391" elapsed="0.011584"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.680524" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.675404" elapsed="0.005226"/>
</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-07-28T01:54:30.662415" elapsed="0.018347"/>
</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-07-28T01:54:30.655371" elapsed="0.025511"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.637900" elapsed="0.043084"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.682129" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.681547" 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-07-28T01:54:30.687077" 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-07-28T01:54:30.687210" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.686937" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.687875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.687393" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.688347" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.688060" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.688823" 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-07-28T01:54:30.688544" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.689305" 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-07-28T01:54:30.689001" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.690215" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.689526" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.690743" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.690405" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.691290" 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-07-28T01:54:30.690946" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.691846" 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-07-28T01:54:30.691520" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.692383" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.692039" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.692953" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.692607" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.693477" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.693153" 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-07-28T01:54:30.686594" elapsed="0.006984"/>
</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-07-28T01:54:30.701032" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.700768" elapsed="0.000338"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.710256" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.710350" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.710505" 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-07-28T01:54:30.701237" elapsed="0.009307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.713868" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.710775" elapsed="0.003154"/>
</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-07-28T01:54:30.700255" elapsed="0.013756"/>
</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-07-28T01:54:30.693727" elapsed="0.020363"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.681209" elapsed="0.032937"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.714852" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.714495" 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-07-28T01:54:30.719867" 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-07-28T01:54:30.720090" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.719672" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.720947" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032bd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.720347" elapsed="0.000639"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.721615" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.721200" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.722245" 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-07-28T01:54:30.721864" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.722898" 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-07-28T01:54:30.722516" elapsed="0.000417"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.724147" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.723149" elapsed="0.001040"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.724887" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.724408" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.725649" 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-07-28T01:54:30.725166" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.726410" 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-07-28T01:54:30.725961" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.727143" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.726708" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.727926" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.727440" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.728692" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032bd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.728208" elapsed="0.000558"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.719132" elapsed="0.009719"/>
</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-07-28T01:54:30.737333" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.737080" elapsed="0.000315"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.747515" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.747659" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.747791" 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-07-28T01:54:30.737541" elapsed="0.010285"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.751049" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.748053" elapsed="0.003060"/>
</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-07-28T01:54:30.736610" elapsed="0.014603"/>
</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-07-28T01:54:30.729062" elapsed="0.022230"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.714288" elapsed="0.037063"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.752072" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.751716" 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-07-28T01:54:30.757119" 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-07-28T01:54:30.757319" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.756918" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.758206" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.757611" elapsed="0.000635"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.758882" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.758483" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.759570" 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-07-28T01:54:30.759133" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.760203" 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-07-28T01:54:30.759824" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.761485" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.760481" elapsed="0.001052"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.762272" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.761783" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.763038" 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-07-28T01:54:30.762598" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.763809" 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-07-28T01:54:30.763314" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.764526" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.764084" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.765272" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.764838" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.766007" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.765568" elapsed="0.000497"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.756397" elapsed="0.009743"/>
</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-07-28T01:54:30.774199" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.773945" elapsed="0.000364"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.785221" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.785362" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.785613" 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-07-28T01:54:30.774443" elapsed="0.011257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.790965" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.786095" elapsed="0.004983"/>
</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-07-28T01:54:30.773506" elapsed="0.017701"/>
</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-07-28T01:54:30.766353" elapsed="0.024974"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.751533" elapsed="0.039906"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.792673" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.792070" 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-07-28T01:54:30.797915" 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-07-28T01:54:30.798047" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.797768" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.798675" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.798227" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.799133" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.798856" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.799627" 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-07-28T01:54:30.799320" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.800084" 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-07-28T01:54:30.799815" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.800984" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.800270" elapsed="0.000745"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.801521" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.801173" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.802041" 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-07-28T01:54:30.801720" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.802573" 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-07-28T01:54:30.802235" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.803133" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.802767" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.803705" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.803331" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.804225" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.803903" 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-07-28T01:54:30.797420" elapsed="0.006902"/>
</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-07-28T01:54:30.811814" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.811549" elapsed="0.000326"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.820929" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.821018" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.821142" 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-07-28T01:54:30.812003" elapsed="0.009175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.824470" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.821402" elapsed="0.003132"/>
</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-07-28T01:54:30.811075" elapsed="0.013539"/>
</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-07-28T01:54:30.804484" elapsed="0.020204"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.791741" elapsed="0.033002"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.825432" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.825074" 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-07-28T01:54:30.830506" 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-07-28T01:54:30.830731" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.830284" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.831636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.831001" elapsed="0.000675"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.832289" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.831889" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.832953" 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-07-28T01:54:30.832571" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.833619" 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-07-28T01:54:30.833212" elapsed="0.000443"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.834937" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.833866" elapsed="0.001113"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.835710" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.835212" elapsed="0.000558"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.836430" 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-07-28T01:54:30.835985" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.837170" 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-07-28T01:54:30.836735" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.837908" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.837469" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.838643" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.838180" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.839402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.838929" 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-07-28T01:54:30.829761" elapsed="0.009801"/>
</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-07-28T01:54:30.846995" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.846733" elapsed="0.000325"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.857310" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.857411" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.857530" 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-07-28T01:54:30.847184" elapsed="0.010373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.859841" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.857720" elapsed="0.002166"/>
</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-07-28T01:54:30.846273" elapsed="0.013672"/>
</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-07-28T01:54:30.839745" elapsed="0.020255"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.824896" elapsed="0.035144"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.860541" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.860271" 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-07-28T01:54:30.864676" 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-07-28T01:54:30.864963" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.864336" elapsed="0.000692"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.866365" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.865367" elapsed="0.001064"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.867535" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.866810" elapsed="0.000787"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.868042" 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-07-28T01:54:30.867770" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.868510" 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-07-28T01:54:30.868218" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.869418" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:30.868686" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.869945" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.869625" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.870470" 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-07-28T01:54:30.870145" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.870987" 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-07-28T01:54:30.870671" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.871524" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.871184" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.872041" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:30.871727" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.872565" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.872240" 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-07-28T01:54:30.863589" elapsed="0.009075"/>
</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-07-28T01:54:30.880071" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.879816" elapsed="0.000358"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.893601" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.893768" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.893976" 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-07-28T01:54:30.880303" elapsed="0.013730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.899198" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.894394" elapsed="0.004905"/>
</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-07-28T01:54:30.879280" elapsed="0.020230"/>
</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-07-28T01:54:30.872818" elapsed="0.026823"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.860141" elapsed="0.039589"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.900847" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.900247" elapsed="0.000699"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.905974" 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-07-28T01:54:30.906105" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.905837" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.906728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06937e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.906286" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.907189" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.906910" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.907701" 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-07-28T01:54:30.907392" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.908156" 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-07-28T01:54:30.907878" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.909058" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.908331" elapsed="0.000757"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.909586" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.909248" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.910097" 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-07-28T01:54:30.909783" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.910624" 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-07-28T01:54:30.910290" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.911178" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.910863" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.911738" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.911407" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.912251" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06937e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.911936" 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-07-28T01:54:30.905496" elapsed="0.006852"/>
</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-07-28T01:54:30.919728" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.919412" elapsed="0.000381"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.930796" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.930888" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.931015" 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-07-28T01:54:30.919923" elapsed="0.011128"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.934275" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.931280" elapsed="0.003060"/>
</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-07-28T01:54:30.918906" elapsed="0.015516"/>
</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-07-28T01:54:30.912515" elapsed="0.022007"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.899955" elapsed="0.034623"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.935396" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.934985" elapsed="0.000502"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.940506" 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-07-28T01:54:30.940707" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.940283" elapsed="0.000465"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.941563" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.940962" elapsed="0.000641"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.942212" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.941819" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.942900" 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-07-28T01:54:30.942485" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.943594" 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-07-28T01:54:30.943152" elapsed="0.000478"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.944781" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.943843" elapsed="0.000980"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.945535" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.945047" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.946259" 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-07-28T01:54:30.945818" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.947005" 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-07-28T01:54:30.946556" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.948964" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:30.947276" elapsed="0.001909"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.950905" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:30.949879" elapsed="0.001216"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.952710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.951609" elapsed="0.001277"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:30.939747" elapsed="0.013353"/>
</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-07-28T01:54:30.966491" level="INFO">&lt;?xml version="1.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-07-28T01:54:30.966119" elapsed="0.000481"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:30.978010" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:30.978419" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:30.978784" 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-07-28T01:54:30.966765" elapsed="0.012089"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.985357" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.979247" elapsed="0.006345"/>
</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-07-28T01:54:30.965445" elapsed="0.020295"/>
</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-07-28T01:54:30.953736" elapsed="0.032154"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.934794" elapsed="0.051263"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.987631" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:30.986712" elapsed="0.001049"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:30.991665" 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-07-28T01:54:30.991874" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.991503" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:30.992624" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:30.992103" elapsed="0.000552"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.993180" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:30.992826" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.993732" 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-07-28T01:54:30.993368" elapsed="0.000391"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:30.994258" 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-07-28T01:54:30.993917" elapsed="0.000368"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:30.995197" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.994450" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.995841" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.995431" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.996484" 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-07-28T01:54:30.996095" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.997072" 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-07-28T01:54:30.996695" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.997663" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:30.997285" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.998256" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:30.997874" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:30.998899" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:30.998525" 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-07-28T01:54:30.991066" elapsed="0.007936"/>
</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-07-28T01:54:31.007246" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.006963" elapsed="0.000421"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.018537" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.018600" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.018704" 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-07-28T01:54:31.007586" elapsed="0.011147"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.023890" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.018946" elapsed="0.005053"/>
</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-07-28T01:54:31.006410" elapsed="0.017723"/>
</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-07-28T01:54:30.999195" elapsed="0.025089"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:54:30.986343" elapsed="0.038032"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.025954" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.025104" elapsed="0.000959"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:31.030796" 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-07-28T01:54:31.030981" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.030651" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.031682" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.031178" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.032225" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.031878" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.032766" 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-07-28T01:54:31.032414" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.033294" 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-07-28T01:54:31.032995" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.034216" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.033500" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.034854" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.034468" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.035478" 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-07-28T01:54:31.035058" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.036055" 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-07-28T01:54:31.035683" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.036651" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.036267" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.037270" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.036905" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.037851" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.037504" 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-07-28T01:54:31.030279" elapsed="0.007672"/>
</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-07-28T01:54:31.046159" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.045848" elapsed="0.000373"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.055949" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.056012" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.056106" 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-07-28T01:54:31.046394" elapsed="0.009737"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.060430" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.056352" elapsed="0.004172"/>
</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-07-28T01:54:31.045327" elapsed="0.015298"/>
</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-07-28T01:54:31.038156" elapsed="0.022546"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.024740" elapsed="0.036017"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.061616" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.061162" elapsed="0.000526"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:31.067051" 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-07-28T01:54:31.067325" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:31.066847" elapsed="0.000523"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.068315" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.067673" elapsed="0.000681"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.069144" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.068661" elapsed="0.000520"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.069999" 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-07-28T01:54:31.069478" elapsed="0.000561"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.070754" 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-07-28T01:54:31.070270" elapsed="0.000522"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.071989" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:31.071073" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.072630" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.072233" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.073218" 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-07-28T01:54:31.072838" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.073815" 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-07-28T01:54:31.073421" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.074493" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:31.074102" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.075116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:31.074750" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.075794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.075356" elapsed="0.000483"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:31.066277" elapsed="0.009656"/>
</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-07-28T01:54:31.083713" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:31.083437" elapsed="0.000338"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.093954" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.094018" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.094110" 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-07-28T01:54:31.083915" elapsed="0.010220"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.099090" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.094297" elapsed="0.004892"/>
</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-07-28T01:54:31.082945" elapsed="0.016620"/>
</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-07-28T01:54:31.076100" elapsed="0.023596"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.060969" elapsed="0.038816"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.101137" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.100448" elapsed="0.000793"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:31.106256" 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-07-28T01:54:31.106394" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:31.106120" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.107012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.106595" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.107526" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.107205" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.108012" 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-07-28T01:54:31.107724" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.108497" 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-07-28T01:54:31.108193" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.109336" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:31.108684" elapsed="0.000684"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.109886" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.109551" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.110415" 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-07-28T01:54:31.110087" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.110979" 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-07-28T01:54:31.110646" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.112358" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:31.111178" elapsed="0.001351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.113803" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:31.113019" elapsed="0.000894"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.115126" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.114271" elapsed="0.000981"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:31.105766" elapsed="0.009634"/>
</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-07-28T01:54:31.125286" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:31.125006" elapsed="0.000348"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.137893" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.137957" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.138059" 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-07-28T01:54:31.125528" elapsed="0.012557"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.142815" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.138248" elapsed="0.004665"/>
</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-07-28T01:54:31.124514" elapsed="0.018529"/>
</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-07-28T01:54:31.115791" elapsed="0.027371"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.100085" elapsed="0.043196"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.144422" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.143853" 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-07-28T01:54:31.149865" 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-07-28T01:54:31.150037" 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-07-28T01:54:31.149716" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.150673" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.150232" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.151151" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.150860" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.151673" 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-07-28T01:54:31.151363" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.152130" 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-07-28T01:54:31.151855" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.152891" 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-07-28T01:54:31.152307" elapsed="0.000615"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.153409" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.153085" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.153939" 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-07-28T01:54:31.153624" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.154469" 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-07-28T01:54:31.154139" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.154971" 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-07-28T01:54:31.154669" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.155571" 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-07-28T01:54:31.155230" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.156084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.155775" 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-07-28T01:54:31.149353" elapsed="0.006828"/>
</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-07-28T01:54:31.163673" 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-07-28T01:54:31.163397" elapsed="0.000332"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.174527" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.174607" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.174737" 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-07-28T01:54:31.163858" elapsed="0.010915"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.177792" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.175001" elapsed="0.002854"/>
</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-07-28T01:54:31.162921" elapsed="0.015014"/>
</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-07-28T01:54:31.156332" elapsed="0.021680"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.143559" elapsed="0.034509"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.178775" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.178395" 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-07-28T01:54:31.184022" 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-07-28T01:54:31.184200" 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-07-28T01:54:31.183829" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.185033" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.184476" elapsed="0.000596"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.185708" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.185291" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.186347" 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-07-28T01:54:31.185962" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.187008" 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-07-28T01:54:31.186622" elapsed="0.000423"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.188140" 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-07-28T01:54:31.187343" elapsed="0.000841"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.188880" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.188408" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.189613" 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-07-28T01:54:31.189156" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.190333" 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-07-28T01:54:31.189890" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.191051" 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-07-28T01:54:31.190620" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.191768" 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-07-28T01:54:31.191368" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.192277" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.191965" 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-07-28T01:54:31.183333" elapsed="0.009041"/>
</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-07-28T01:54:31.199713" 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-07-28T01:54:31.199436" elapsed="0.000335"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.209113" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.209175" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.209275" 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-07-28T01:54:31.199905" elapsed="0.009396"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.211490" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.209481" elapsed="0.002052"/>
</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-07-28T01:54:31.198976" elapsed="0.012622"/>
</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-07-28T01:54:31.192538" elapsed="0.019127"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.178207" elapsed="0.033533"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.212876" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.212265" 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-07-28T01:54:31.220284" 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-07-28T01:54:31.220412" 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-07-28T01:54:31.220144" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.220998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.220612" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.221474" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.221180" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.221933" 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-07-28T01:54:31.221657" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.222470" 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-07-28T01:54:31.222113" elapsed="0.000386"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.223355" 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-07-28T01:54:31.222652" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.223886" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.223564" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.224396" 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-07-28T01:54:31.224086" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.224930" 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-07-28T01:54:31.224608" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.225428" 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-07-28T01:54:31.225122" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.226088" 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-07-28T01:54:31.225642" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.226632" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.226301" 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-07-28T01:54:31.219807" 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-07-28T01:54:31.234111" 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-07-28T01:54:31.233855" elapsed="0.000314"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.243967" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.244099" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.244246" 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-07-28T01:54:31.234296" elapsed="0.009987"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.247359" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.244540" elapsed="0.002880"/>
</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-07-28T01:54:31.233401" elapsed="0.014123"/>
</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-07-28T01:54:31.226882" elapsed="0.020723"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.211971" elapsed="0.035693"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.248349" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.247995" 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-07-28T01:54:31.253382" 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-07-28T01:54:31.253586" 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-07-28T01:54:31.253193" elapsed="0.000440"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.254416" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0517dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.253863" elapsed="0.000611"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.255084" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.254692" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.255802" 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-07-28T01:54:31.255353" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.256429" 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-07-28T01:54:31.256052" elapsed="0.000433"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.257415" 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-07-28T01:54:31.256696" elapsed="0.000780"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.258143" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.257698" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.258870" 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-07-28T01:54:31.258415" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.259639" 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-07-28T01:54:31.259140" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.260168" 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-07-28T01:54:31.259866" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.260693" 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-07-28T01:54:31.260363" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.261202" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0517dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.260891" 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-07-28T01:54:31.252719" elapsed="0.008580"/>
</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-07-28T01:54:31.268949" 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-07-28T01:54:31.268696" elapsed="0.000348"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.282075" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.282156" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.282283" 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-07-28T01:54:31.269175" elapsed="0.013143"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.285668" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.282571" elapsed="0.003159"/>
</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-07-28T01:54:31.268239" elapsed="0.017571"/>
</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-07-28T01:54:31.261449" elapsed="0.024436"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.247815" elapsed="0.038126"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.286633" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.286260" 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-07-28T01:54:31.291704" 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-07-28T01:54:31.291894" 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-07-28T01:54:31.291485" elapsed="0.000450"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:31.292708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:31.292148" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.293345" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:31.292961" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.293995" 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-07-28T01:54:31.293615" elapsed="0.000417"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:31.294645" 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-07-28T01:54:31.294245" elapsed="0.000441"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:31.295737" 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-07-28T01:54:31.294896" elapsed="0.000883"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.296850" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.295999" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.297615" 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-07-28T01:54:31.297140" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.298352" 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-07-28T01:54:31.297892" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.299075" 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-07-28T01:54:31.298650" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.299867" 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-07-28T01:54:31.299438" elapsed="0.000475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.300372" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:31.300065" 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-07-28T01:54:31.290980" elapsed="0.009502"/>
</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-07-28T01:54:31.307767" 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-07-28T01:54:31.307515" elapsed="0.000312"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:31.317692" level="INFO">PUT Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.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-07-28T01:54:31.317752" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:54:31.317841" 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-07-28T01:54:31.307954" elapsed="0.009913"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:31.320836" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:31.318026" elapsed="0.002910"/>
</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-07-28T01:54:31.307054" elapsed="0.014009"/>
</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-07-28T01:54:31.300638" elapsed="0.020546"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-07-28T01:54:31.286079" elapsed="0.035196"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:54:29.195424" elapsed="2.125924"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.322611" 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-07-28T01:54:31.321723" elapsed="3.001190"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:34.328959" 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-07-28T01:54:34.323501" elapsed="0.005590"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:34.476609" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=20.417s, table=0, n_packets=13, n_bytes=1042, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=3.013s, table=2, n_packets=0, n_bytes=0, priority=550,tun_src=192.168.0.10 actions=drop
 cookie=0x0, duration=3.049s, 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.087s, 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.122s, 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.156s, table=2, n_packets=0, n_bytes=0, priority=222,ip,nw_dst=2.2.0.0/16 actions=drop
 cookie=0xdb, duration=3.275s, 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.104s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=4.254s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=4.216s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=4.175s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.237s, 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.313s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=3.354s, 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.447s, 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.409s, 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.069s, 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.953s, 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.400s, 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.779s, 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.740s, 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.473s, 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.437s, 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.620s, 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.583s, 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.546s, 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.510s, 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.630s, 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.657s, 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.846s, 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.810s, 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.771s, 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.697s, 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.733s, 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.880s, 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.913s, 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=4.030s, 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.990s, 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.104s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=4.140s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=4.368s, 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.291s, 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.313s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=4.484s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=4.522s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=4.559s, 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.593s, 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.667s, 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.704s, 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.817s, 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.856s, 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.891s, 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.928s, 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.960s, 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.998s, 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=5.033s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=5.067s, 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-07-28T01:54:34.329538" elapsed="0.147446"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:54:29.195045" elapsed="5.282160"/>
</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-07-28T01:54:34.489784" 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-07-28T01:54:34.489966" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.489608" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:34.490753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:34.490214" elapsed="0.000569"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.491321" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:34.490982" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.491851" 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-07-28T01:54:34.491524" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.492367" 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-07-28T01:54:34.492076" elapsed="0.000401"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.493354" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:34.492642" elapsed="0.000744"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.494021" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.493621" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.494610" 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-07-28T01:54:34.494224" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.495201" 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-07-28T01:54:34.494824" elapsed="0.000461"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.495829" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.495447" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.496437" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:34.496032" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.497048" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.496671" elapsed="0.000422"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:34.489163" elapsed="0.007988"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.497837" 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-07-28T01:54:34.497343" elapsed="0.000526"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.498314" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.498025" elapsed="0.000348"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.507136" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.506766" elapsed="0.000399"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.514995" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.515330" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:34.515519" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.507344" elapsed="0.008215"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.516215" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.515844" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.519648" 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-07-28T01:54:34.516557" elapsed="0.003178"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.522473" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.519847" elapsed="0.002709"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.519814" elapsed="0.002775"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.526846" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.526913" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:34.522810" elapsed="0.004137"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.529578" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.527054" elapsed="0.002608"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.527026" elapsed="0.002670"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.529745" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:54:34.530051" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:34.530114" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:34.506364" elapsed="0.023782"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.533268" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.530982" elapsed="0.002351"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.530956" elapsed="0.002409"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.534273" 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-07-28T01:54:34.533673" elapsed="0.000639"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.535097" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.534571" elapsed="0.000568"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.535226" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:34.535538" 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-07-28T01:54:34.530488" elapsed="0.005087"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.535820" elapsed="0.000604"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.505725" elapsed="0.030818"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.554000" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.553379" elapsed="0.000660"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.566366" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.566982" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:34.567359" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.554219" elapsed="0.013169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.568017" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.567663" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.570863" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:34.568228" elapsed="0.003604"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.573867" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.571949" elapsed="0.001981"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.571915" elapsed="0.002041"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.601200" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.601263" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:34.574161" elapsed="0.027127"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.603422" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.601419" elapsed="0.002081"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.601383" elapsed="0.002147"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.603583" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:34.603828" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:34.603883" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:34.552885" elapsed="0.051022"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.606393" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.604717" elapsed="0.001722"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.604697" elapsed="0.001780"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.607182" 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-07-28T01:54:34.606660" elapsed="0.000550"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.607765" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.607390" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.607854" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:34.608038" 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-07-28T01:54:34.604220" elapsed="0.003843"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.608241" elapsed="0.000450"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.551721" elapsed="0.057036"/>
</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-07-28T01:54:34.485486" elapsed="0.123334"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:34.477665" elapsed="0.131297"/>
</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-07-28T01:54:34.620696" 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-07-28T01:54:34.620890" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.620525" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:34.621658" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee2a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:34.621108" elapsed="0.000579"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.622162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:34.621850" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.622655" 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-07-28T01:54:34.622348" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.623172" 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-07-28T01:54:34.622887" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.624100" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:34.623367" elapsed="0.000766"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.624684" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.624300" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.625319" 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-07-28T01:54:34.624972" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.625961" 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-07-28T01:54:34.625575" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.626545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.626188" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.627116" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:34.626775" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.627674" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee2a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.627318" 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-07-28T01:54:34.620133" elapsed="0.007645"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.628480" 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-07-28T01:54:34.627937" elapsed="0.000577"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.628927" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.628675" 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-07-28T01:54:34.637302" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.636943" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.644975" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.645362" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:34.645615" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.637517" elapsed="0.008138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.646430" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.645951" elapsed="0.000587"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.650486" 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-07-28T01:54:34.646818" elapsed="0.003844"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.653683" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.650795" elapsed="0.002975"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.650756" elapsed="0.003051"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.658543" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.658613" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:34.654055" elapsed="0.004592"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.661519" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.658778" elapsed="0.002826"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.658747" elapsed="0.002894"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.661692" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:54:34.662029" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:34.662105" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:34.636600" elapsed="0.025540"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.665727" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.663091" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.663066" elapsed="0.002773"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.666763" 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-07-28T01:54:34.666075" elapsed="0.000715"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.667329" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.666953" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.667403" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:34.667623" 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-07-28T01:54:34.662554" elapsed="0.005095"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.667812" elapsed="0.000445"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.635950" elapsed="0.032384"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.676709" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.676326" elapsed="0.000411"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.689106" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.690440" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:34.691225" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.676876" elapsed="0.014410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.692514" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.691780" elapsed="0.000841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.699047" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:34.692991" elapsed="0.007395"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.703164" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.700541" elapsed="0.002702"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.700498" elapsed="0.002779"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.731915" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.731978" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:34.703534" elapsed="0.028469"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.734105" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.732138" elapsed="0.002030"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.732102" elapsed="0.002097"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.734240" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:34.734498" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:34.734545" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:34.675924" elapsed="0.058644"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.736841" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.735246" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.735228" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.737593" 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-07-28T01:54:34.737073" elapsed="0.000547"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.738145" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.737790" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.738220" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:34.738402" 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-07-28T01:54:34.734860" 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-07-28T01:54:34.738604" 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-07-28T01:54:34.675179" elapsed="0.063918"/>
</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-07-28T01:54:34.616679" elapsed="0.122479"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:34.609192" elapsed="0.130104"/>
</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-07-28T01:54:34.750833" 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-07-28T01:54:34.751014" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.750673" elapsed="0.000370"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:34.751678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:34.751215" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.752156" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:34.751863" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.752634" 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-07-28T01:54:34.752340" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.753096" 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-07-28T01:54:34.752816" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.753974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:34.753278" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.754542" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.754173" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.755147" 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-07-28T01:54:34.754816" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.755692" 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-07-28T01:54:34.755343" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.756202" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.755887" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.756740" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:34.756400" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.757258" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.756937" 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-07-28T01:54:34.750294" elapsed="0.007066"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.758028" 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-07-28T01:54:34.757576" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.758491" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.758214" 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-07-28T01:54:34.766475" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.766123" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.772627" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.772912" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:34.773034" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.766645" elapsed="0.006416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.773568" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.773246" elapsed="0.000369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.776074" 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-07-28T01:54:34.773764" elapsed="0.002426"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.778494" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.776284" elapsed="0.002294"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.776254" elapsed="0.002361"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.783264" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.783333" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:34.778848" elapsed="0.004532"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.786197" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.783517" elapsed="0.002747"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.783487" elapsed="0.002802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.786325" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:34.786578" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:34.786623" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:34.765784" elapsed="0.020862"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.789004" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.787282" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.787264" elapsed="0.001808"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.789751" 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-07-28T01:54:34.789250" elapsed="0.000531"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.790335" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.789947" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.790412" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:34.790633" 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-07-28T01:54:34.786918" elapsed="0.003747"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.790865" elapsed="0.000454"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.765115" elapsed="0.026296"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.799773" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.799416" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.813486" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.814340" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:34.814951" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.799948" elapsed="0.015059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.815864" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.815334" elapsed="0.000599"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.820389" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:34.816148" elapsed="0.005729"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.824959" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.822009" elapsed="0.003033"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.821971" elapsed="0.003107"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.854092" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.854164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:34.825339" elapsed="0.028850"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.856480" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.854360" elapsed="0.002196"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.854320" elapsed="0.002266"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.856629" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:34.856901" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:34.856956" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:34.799031" elapsed="0.057954"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.859479" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.857760" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.857740" elapsed="0.001811"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.860267" 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-07-28T01:54:34.859736" elapsed="0.000558"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.860860" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.860476" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.860936" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:34.861143" 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-07-28T01:54:34.857309" elapsed="0.003859"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.861347" elapsed="0.000486"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.798319" elapsed="0.063581"/>
</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-07-28T01:54:34.746729" elapsed="0.115235"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:34.739544" elapsed="0.122558"/>
</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-07-28T01:54:34.873931" 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-07-28T01:54:34.874123" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.873761" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:34.874841" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:34.874341" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.875392" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:34.875030" elapsed="0.000402"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.875950" 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-07-28T01:54:34.875612" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.876432" 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-07-28T01:54:34.876142" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.877376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:34.876644" elapsed="0.000785"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.877990" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.877615" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.878657" 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-07-28T01:54:34.878284" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.879222" 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-07-28T01:54:34.878868" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.879786" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.879417" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.880341" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:34.879996" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.880902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:34.880556" 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-07-28T01:54:34.873354" elapsed="0.007663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.881661" 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-07-28T01:54:34.881182" elapsed="0.000511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.882136" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.881858" 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-07-28T01:54:34.890652" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.890266" elapsed="0.000413"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.897853" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.898143" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:34.898284" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.890835" elapsed="0.007475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.898845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.898536" elapsed="0.000365"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.901506" 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-07-28T01:54:34.899044" 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-07-28T01:54:34.903616" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.901731" elapsed="0.001957"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.901704" elapsed="0.002009"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.907544" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.907614" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:34.903875" elapsed="0.003773"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.910599" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.907763" elapsed="0.002922"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.907735" elapsed="0.002987"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.910773" elapsed="0.000052"/>
</return>
<msg time="2026-07-28T01:54:34.911109" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:34.911174" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:34.889765" elapsed="0.021442"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.914364" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.912140" elapsed="0.002270"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.912103" elapsed="0.002339"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.915101" 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-07-28T01:54:34.914625" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.915681" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.915293" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.915762" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:34.915943" 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-07-28T01:54:34.911603" elapsed="0.004365"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.916143" elapsed="0.000445"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.889039" elapsed="0.027617"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.924920" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:34.924602" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:34.935111" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:34.936399" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:34.937190" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:34.925084" elapsed="0.012173"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.938565" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:34.937818" elapsed="0.000858"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.945891" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:34.939045" elapsed="0.007814"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.948807" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.946957" elapsed="0.001914"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.946928" elapsed="0.001973"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:34.975180" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:34.975239" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:34.949080" elapsed="0.026184"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:34.977289" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:34.975391" elapsed="0.001995"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.975356" elapsed="0.002059"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:34.977471" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:34.977710" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:34.977754" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:34.924191" elapsed="0.053586"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:34.980238" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:34.978430" elapsed="0.001872"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:34.978412" elapsed="0.001920"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.981235" 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-07-28T01:54:34.980576" elapsed="0.000697"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:34.982082" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:34.981564" elapsed="0.000554"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:34.982192" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:34.982470" 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-07-28T01:54:34.978053" elapsed="0.004455"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:34.982740" elapsed="0.000587"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:34.923502" elapsed="0.059914"/>
</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-07-28T01:54:34.869691" elapsed="0.113834"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:34.862362" elapsed="0.121350"/>
</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-07-28T01:54:34.997510" 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-07-28T01:54:34.997704" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:34.997269" elapsed="0.000465"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:34.998374" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1dad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:34.997906" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.998871" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:34.998579" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.999325" 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-07-28T01:54:34.999056" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:34.999796" 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-07-28T01:54:34.999522" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.000720" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:34.999980" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.001267" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.000919" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.001913" 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-07-28T01:54:35.001577" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.002446" 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-07-28T01:54:35.002111" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.002981" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.002664" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.003518" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.003178" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.004049" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1dad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.003716" 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-07-28T01:54:34.996899" elapsed="0.007256"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.004744" 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-07-28T01:54:35.004314" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.005177" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.004930" 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-07-28T01:54:35.013140" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.012813" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.020768" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.021158" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.021368" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.013306" elapsed="0.008102"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.022125" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.021710" elapsed="0.000487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.025953" 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-07-28T01:54:35.022408" elapsed="0.003709"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.028964" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.026239" elapsed="0.002807"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.026204" elapsed="0.002886"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.033928" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.033999" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.029369" elapsed="0.004665"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.036769" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.034151" elapsed="0.002709"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.034121" elapsed="0.002776"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.036953" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:54:35.037273" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.037378" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.012485" elapsed="0.024930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.040803" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.038353" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.038327" elapsed="0.002581"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.041845" 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-07-28T01:54:35.041143" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.042392" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.042040" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.042483" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:35.042672" 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-07-28T01:54:35.037830" elapsed="0.004867"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.042859" 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-07-28T01:54:35.011865" elapsed="0.031473"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.051433" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.051106" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.065110" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.066268" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.066975" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.051617" elapsed="0.015417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.068084" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.067442" elapsed="0.000741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.074250" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:35.068528" elapsed="0.006683"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.077074" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.075305" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.075276" elapsed="0.001878"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.102430" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.102504" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.077331" elapsed="0.025198"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.104529" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.102647" elapsed="0.001942"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.102618" elapsed="0.001999"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.104654" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:35.104887" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.104931" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.050711" elapsed="0.054242"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.107282" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.105689" elapsed="0.001639"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.105669" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.107998" 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-07-28T01:54:35.107522" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.108561" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.108187" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.108653" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:35.108857" 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-07-28T01:54:35.105222" elapsed="0.003661"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.109042" elapsed="0.000459"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.049975" elapsed="0.059591"/>
</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-07-28T01:54:34.993147" elapsed="0.116479"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:34.984020" elapsed="0.125740"/>
</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-07-28T01:54:35.185686" 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-07-28T01:54:35.185893" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.185497" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.186619" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1fc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.186112" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.187093" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.186807" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.187565" 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-07-28T01:54:35.187273" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.188012" 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-07-28T01:54:35.187747" elapsed="0.000368"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.188985" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.188270" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.189582" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.189182" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.190186" 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-07-28T01:54:35.189857" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.190728" 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-07-28T01:54:35.190377" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.191237" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.190923" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.191773" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.191434" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.192301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1fc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.191967" 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-07-28T01:54:35.184838" elapsed="0.007563"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.193055" 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-07-28T01:54:35.192570" elapsed="0.000517"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.193572" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.193299" 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-07-28T01:54:35.201789" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.201448" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.209374" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.210075" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.210406" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.201952" elapsed="0.008554"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.211713" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.210975" elapsed="0.000854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.216250" 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-07-28T01:54:35.212210" elapsed="0.004202"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.219242" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.216561" elapsed="0.002763"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.216523" elapsed="0.002834"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.224093" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.224164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.219607" elapsed="0.004592"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.226639" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.224316" elapsed="0.002382"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.224287" elapsed="0.002437"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.226759" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:35.226981" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.227026" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.201084" elapsed="0.025966"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.229350" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.227697" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.227676" elapsed="0.001744"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.230062" 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-07-28T01:54:35.229595" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.230646" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.230254" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.230723" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:35.230926" 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-07-28T01:54:35.227318" elapsed="0.003636"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.231117" 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-07-28T01:54:35.200416" elapsed="0.031213"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.239808" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.239409" elapsed="0.000435"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.253435" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.254216" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.254713" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.239990" elapsed="0.014763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.255519" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.255061" elapsed="0.000528"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.259706" 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;643000000&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;303000000&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;682000000&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;2&lt;/second&gt;&lt;nanosecond&gt;720000000&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;2&lt;/second&gt;&lt;nanosecond&gt;759000000&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;2&lt;/second&gt;&lt;nanosecond&gt;794000000&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;340000000&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;376000000&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;2&lt;/second&gt;&lt;nanosecond&gt;831000000&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;413000000&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;2&lt;/second&gt;&lt;nanosecond&gt;863000000&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;449000000&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;2&lt;/second&gt;&lt;nanosecond&gt;901000000&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;486000000&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;2&lt;/second&gt;&lt;nanosecond&gt;936000000&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;523000000&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;2&lt;/second&gt;&lt;nanosecond&gt;970000000&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;7000000&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;7000000&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;312000000&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;140000000&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;350000000&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;178000000&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;387000000&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;216000000&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;425000000&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;462000000&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;496000000&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;533000000&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;257000000&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;570000000&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;607000000&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;636000000&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;1&lt;/second&gt;&lt;nanosecond&gt;674000000&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;157000000&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;1&lt;/second&gt;&lt;nanosecond&gt;713000000&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;0&lt;/second&gt;&lt;nanosecond&gt;916000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;749000000&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;1&lt;/second&gt;&lt;nanosecond&gt;783000000&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;1&lt;/second&gt;&lt;nanosecond&gt;816000000&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;1&lt;/second&gt;&lt;nanosecond&gt;856000000&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;0&lt;/second&gt;&lt;nanosecond&gt;952000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;1&lt;/second&gt;&lt;nanosecond&gt;893000000&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;0&lt;/second&gt;&lt;nanosecond&gt;990000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;194000000&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;1&lt;/second&gt;&lt;nanosecond&gt;933000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;216000000&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;1&lt;/second&gt;&lt;nanosecond&gt;972000000&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;59000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;271000000&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;96000000&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;43000000&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;78000000&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;119000000&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;600000000&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;560000000&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-07-28T01:54:35.255805" elapsed="0.005271"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.264025" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.261220" elapsed="0.002885"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.261165" elapsed="0.002975"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.298112" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.298182" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.264385" elapsed="0.033822"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.300607" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.298393" elapsed="0.002280"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.298319" elapsed="0.002382"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.300742" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:35.301021" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.301067" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.239007" elapsed="0.062083"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.303608" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.301907" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.301889" elapsed="0.001822"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.304430" 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-07-28T01:54:35.303873" elapsed="0.000612"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.305082" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.304654" elapsed="0.000456"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.305160" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:35.305358" 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-07-28T01:54:35.301476" elapsed="0.003942"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.305599" elapsed="0.000462"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.238312" elapsed="0.067815"/>
</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-07-28T01:54:35.117346" elapsed="0.188847"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.110104" elapsed="0.196265"/>
</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-07-28T01:54:35.318644" 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-07-28T01:54:35.318825" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.318442" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.319518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.319008" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.320034" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.319701" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.320543" 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-07-28T01:54:35.320248" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.321039" 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-07-28T01:54:35.320764" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.322162" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.321293" elapsed="0.000900"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.322748" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.322391" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.323378" 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-07-28T01:54:35.323051" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.324001" 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-07-28T01:54:35.323634" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.324570" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.324199" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.325128" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.324768" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.325786" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.325401" elapsed="0.000428"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:35.318060" elapsed="0.007825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.326516" 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-07-28T01:54:35.326037" elapsed="0.000513"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.326951" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.326705" 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-07-28T01:54:35.335470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.335100" elapsed="0.000398"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.342197" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.342502" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.342655" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.335632" elapsed="0.007049"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.343136" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.342878" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.349275" 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-07-28T01:54:35.343395" elapsed="0.005968"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.352258" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.349485" elapsed="0.002843"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.349437" elapsed="0.002924"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.357336" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.357401" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.352579" elapsed="0.004912"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.359512" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.357606" elapsed="0.001966"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.357579" elapsed="0.002017"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.359629" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:35.359863" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.359909" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.334742" elapsed="0.025190"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.362341" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.360533" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.360514" elapsed="0.001909"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.363038" 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-07-28T01:54:35.362589" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.363678" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.363268" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.363753" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:35.363973" 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-07-28T01:54:35.360145" 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-07-28T01:54:35.364157" elapsed="0.000489"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.334122" elapsed="0.030591"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.373115" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.372773" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.386821" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.388034" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.388817" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.373294" elapsed="0.015584"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.390077" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.389334" elapsed="0.000947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.397334" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.390732" elapsed="0.007933"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.400605" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.398745" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.398725" elapsed="0.001951"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.424738" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.424785" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.400854" elapsed="0.023988"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.426912" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.424926" elapsed="0.002044"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.424907" elapsed="0.002088"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.427029" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:35.427263" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.427307" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.372342" elapsed="0.054987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.429769" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.428004" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.427985" elapsed="0.001852"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.430435" 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-07-28T01:54:35.429986" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.431010" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.430643" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.431085" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:35.431263" 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-07-28T01:54:35.427621" elapsed="0.003666"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.431444" 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-07-28T01:54:35.371647" elapsed="0.060264"/>
</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-07-28T01:54:35.314305" elapsed="0.117663"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.306847" elapsed="0.125241"/>
</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-07-28T01:54:35.443151" 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-07-28T01:54:35.443291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.443011" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.443918" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a14e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.443485" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.444378" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.444099" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.444843" 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-07-28T01:54:35.444571" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.445325" 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-07-28T01:54:35.445017" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.446273" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.445520" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.446806" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.446475" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.447372" 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-07-28T01:54:35.447044" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.447921" 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-07-28T01:54:35.447585" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.448428" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.448115" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.448960" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.448641" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.449513" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a14e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.449176" 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-07-28T01:54:35.442675" elapsed="0.006935"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.450151" 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-07-28T01:54:35.449766" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.450593" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.450332" 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-07-28T01:54:35.458415" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.458110" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.464726" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.464963" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.465073" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.458590" elapsed="0.006549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.465613" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.465338" elapsed="0.000321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.468995" 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-07-28T01:54:35.465857" elapsed="0.003226"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.471670" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.469209" elapsed="0.002535"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.469181" elapsed="0.002594"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.476587" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.476653" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.471968" elapsed="0.004717"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.479029" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.476791" elapsed="0.002294"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.476765" elapsed="0.002343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.479141" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:54:35.479380" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.479423" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.457786" elapsed="0.021660"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.481833" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.480086" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.480067" elapsed="0.001833"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.482542" 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-07-28T01:54:35.482086" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.483128" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.482732" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.483241" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:35.483425" 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-07-28T01:54:35.479713" elapsed="0.003736"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.483668" 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-07-28T01:54:35.457185" elapsed="0.026976"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.492680" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.492322" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.506417" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.507407" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.507859" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.492838" elapsed="0.015060"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.508651" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.508163" elapsed="0.000601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.516382" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.508973" elapsed="0.009214"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.520361" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.518311" elapsed="0.002104"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.518278" elapsed="0.002161"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.545908" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.545965" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.520602" elapsed="0.025387"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.547961" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.546119" elapsed="0.001937"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.546090" elapsed="0.002000"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.548141" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:35.548383" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.548429" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.491941" elapsed="0.056525"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.550912" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.549149" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.549126" elapsed="0.001883"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.551905" 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-07-28T01:54:35.551224" elapsed="0.000723"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.552722" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.552178" elapsed="0.000581"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.552830" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:35.553109" 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-07-28T01:54:35.548755" elapsed="0.004397"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.553404" elapsed="0.000613"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.491210" elapsed="0.062899"/>
</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-07-28T01:54:35.439230" elapsed="0.114958"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.432352" elapsed="0.122031"/>
</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-07-28T01:54:35.567123" 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-07-28T01:54:35.567327" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.566965" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.568013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.567537" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.568521" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.568200" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.568980" 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-07-28T01:54:35.568704" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.569540" 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-07-28T01:54:35.569228" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.570545" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.569730" elapsed="0.000847"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.571096" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.570741" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.571730" 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-07-28T01:54:35.571382" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.572276" 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-07-28T01:54:35.571942" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.572839" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.572501" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.573424" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.573085" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.573979" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1d120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.573643" 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-07-28T01:54:35.566605" elapsed="0.007472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.574650" 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-07-28T01:54:35.574230" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.575092" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.574834" 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-07-28T01:54:35.583062" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.582743" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.590232" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.590538" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.590656" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.583221" elapsed="0.007460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.591445" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.590972" elapsed="0.000577"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.595046" 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-07-28T01:54:35.591755" elapsed="0.003399"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.597897" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.595272" elapsed="0.002705"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.595241" elapsed="0.002768"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.602542" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.602599" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.598217" elapsed="0.004406"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.604476" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.602701" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.602681" elapsed="0.001877"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.604592" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:54:35.604810" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.604854" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.582400" elapsed="0.022477"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.607289" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.605509" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.605489" elapsed="0.001879"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.607966" 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-07-28T01:54:35.607539" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.608543" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.608157" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.608619" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:35.608811" 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-07-28T01:54:35.605143" 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-07-28T01:54:35.609000" elapsed="0.000468"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.581825" 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-07-28T01:54:35.617694" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.617349" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.628207" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.629546" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.630352" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.617855" elapsed="0.012581"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.631658" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.630938" elapsed="0.000837"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.635835" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.632127" elapsed="0.004669"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.638770" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.636884" elapsed="0.001942"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.636860" elapsed="0.001989"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.667963" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.668035" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.639001" elapsed="0.029069"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.670470" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.668197" elapsed="0.002335"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.668166" elapsed="0.002393"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.670596" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:54:35.670820" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.670866" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.616939" elapsed="0.053954"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.673193" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.671533" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.671513" elapsed="0.001749"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.673909" 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-07-28T01:54:35.673426" elapsed="0.000511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.674495" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.674111" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.674574" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:35.674771" 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-07-28T01:54:35.671151" elapsed="0.003645"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.674961" 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-07-28T01:54:35.616273" elapsed="0.059194"/>
</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-07-28T01:54:35.563060" elapsed="0.112481"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.554986" elapsed="0.120702"/>
</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-07-28T01:54:35.687444" 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-07-28T01:54:35.687653" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.687290" elapsed="0.000392"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.688305" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef830&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.687841" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.688822" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.688518" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.689333" 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-07-28T01:54:35.689039" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.689828" 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-07-28T01:54:35.689541" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.690828" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.690020" elapsed="0.000839"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.691378" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.691021" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.691998" 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-07-28T01:54:35.691655" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.692562" 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-07-28T01:54:35.692210" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.693107" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.692771" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.693675" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.693319" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.694212" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef830&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.693889" 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-07-28T01:54:35.686928" elapsed="0.007396"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.694929" 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-07-28T01:54:35.694493" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.695377" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.695114" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.703400" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.703084" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.710201" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.710503" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.710621" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.703580" elapsed="0.007067"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.711321" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.710937" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.715256" 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-07-28T01:54:35.711626" elapsed="0.003728"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.718095" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.715507" elapsed="0.002678"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.715470" elapsed="0.002751"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.722716" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.722769" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.718443" elapsed="0.004355"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.724658" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.722876" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.722856" elapsed="0.001885"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.724774" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:35.725020" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.725174" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.702745" elapsed="0.022455"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.727501" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.725852" elapsed="0.001696"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.725833" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.728175" 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-07-28T01:54:35.727736" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.728755" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.728369" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.728844" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:35.729081" 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-07-28T01:54:35.725486" elapsed="0.003623"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.729285" 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-07-28T01:54:35.702149" elapsed="0.027641"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.737845" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.737519" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.751541" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.752677" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.753420" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.738009" elapsed="0.015514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.754780" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.753949" elapsed="0.000952"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.761399" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.755256" elapsed="0.007283"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.764435" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.762618" elapsed="0.001885"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.762596" elapsed="0.001931"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.789333" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.789383" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.764676" elapsed="0.024730"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.791325" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.789509" elapsed="0.001881"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.789488" elapsed="0.001927"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.791497" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:35.791735" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.791779" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.737106" elapsed="0.054696"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.794066" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.792413" elapsed="0.001700"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.792393" elapsed="0.001742"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.794752" 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-07-28T01:54:35.794290" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.795304" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.794946" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.795392" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:35.795599" 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-07-28T01:54:35.792056" elapsed="0.003569"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.795788" 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-07-28T01:54:35.736429" elapsed="0.059844"/>
</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-07-28T01:54:35.683383" elapsed="0.113037"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.676020" elapsed="0.120549"/>
</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-07-28T01:54:35.808129" 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-07-28T01:54:35.808322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.807970" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.809089" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.808543" elapsed="0.000575"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.809605" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.809278" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.810082" 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-07-28T01:54:35.809793" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.810566" 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-07-28T01:54:35.810261" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.811572" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.810747" elapsed="0.000857"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.812158" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.811792" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.812792" 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-07-28T01:54:35.812432" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.813367" 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-07-28T01:54:35.813024" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.813953" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.813609" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.814518" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.814162" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.815069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.814724" 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-07-28T01:54:35.807602" elapsed="0.007586"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.815841" 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-07-28T01:54:35.815361" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.816346" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.816073" 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-07-28T01:54:35.824508" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.824161" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.831272" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.831901" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.832067" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.824671" elapsed="0.007432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.832800" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.832395" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.836169" 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-07-28T01:54:35.833119" elapsed="0.003151"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.839015" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.836380" elapsed="0.002710"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.836347" elapsed="0.002775"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.843246" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.843293" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.839323" elapsed="0.003999"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.845198" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.843403" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.843384" elapsed="0.001902"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.845319" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:35.845540" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.845591" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.823828" elapsed="0.021792"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.847833" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.846185" elapsed="0.001694"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.846167" elapsed="0.001734"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.848488" 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-07-28T01:54:35.848052" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.849075" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.848694" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.849163" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:35.849345" 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-07-28T01:54:35.845836" 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-07-28T01:54:35.849550" 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-07-28T01:54:35.823219" elapsed="0.026823"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.858059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.857739" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.868318" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.869073" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.869509" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.858219" elapsed="0.011332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.870165" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.869785" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.874310" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.870472" elapsed="0.005165"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.878206" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.875757" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.875723" elapsed="0.002567"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.902197" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.902249" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.878441" elapsed="0.023836"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:35.904181" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.902375" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.902351" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.904302" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:35.904548" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:35.904593" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.857325" elapsed="0.047290"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.906892" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.905244" elapsed="0.001695"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.905225" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.907583" 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-07-28T01:54:35.907117" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.908151" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.907788" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.908235" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:35.908419" 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-07-28T01:54:35.904862" 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-07-28T01:54:35.908655" 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-07-28T01:54:35.856665" elapsed="0.052493"/>
</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-07-28T01:54:35.804002" elapsed="0.105214"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.796893" elapsed="0.112450"/>
</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-07-28T01:54:35.920922" 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-07-28T01:54:35.921127" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.920741" elapsed="0.000417"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:35.921882" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b1f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:35.921323" elapsed="0.000595"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.922367" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:35.922077" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.922856" 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-07-28T01:54:35.922573" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:35.923332" 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-07-28T01:54:35.923048" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.924335" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:35.923529" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.924949" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.924556" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.925582" 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-07-28T01:54:35.925231" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.926139" 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-07-28T01:54:35.925794" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.926696" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.926341" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.927244" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:35.926911" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.927791" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b1f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:35.927448" 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-07-28T01:54:35.920258" elapsed="0.007632"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.928440" 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-07-28T01:54:35.928044" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.928912" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:35.928644" 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-07-28T01:54:35.937137" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.936789" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.945718" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.946031" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:35.946147" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.937298" elapsed="0.008876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.946680" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.946386" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.949092" 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-07-28T01:54:35.946878" elapsed="0.002280"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.951652" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.949237" elapsed="0.002489"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.949214" elapsed="0.002543"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:35.956258" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:35.956323" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:35.951971" 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-07-28T01:54:35.958960" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:35.956493" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.956438" elapsed="0.002634"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:35.959119" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:35.959406" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:35.959498" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:35.936434" elapsed="0.023098"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.962496" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.960328" elapsed="0.002225"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.960295" elapsed="0.002282"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.963151" 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-07-28T01:54:35.962730" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.963729" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:35.963347" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:35.963820" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:35.964005" 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-07-28T01:54:35.959834" elapsed="0.004197"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:35.964191" elapsed="0.000439"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.935832" elapsed="0.028870"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.972796" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:35.972476" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:35.987000" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:35.988180" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:35.989004" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:35.973011" elapsed="0.016063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.989965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:35.989494" elapsed="0.000539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:35.993994" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:35.990237" elapsed="0.005098"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:35.998034" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:35.995476" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:35.995419" elapsed="0.002717"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.028970" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.029018" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:35.998357" elapsed="0.030685"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.030970" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.029130" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.029109" elapsed="0.001943"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.031122" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:36.031333" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.031376" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:35.972065" elapsed="0.059334"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.033728" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.032035" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.032016" elapsed="0.001778"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.034414" 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-07-28T01:54:36.033982" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.035099" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.034666" elapsed="0.000460"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.035176" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.035356" 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-07-28T01:54:36.031649" elapsed="0.003732"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.035555" elapsed="0.000450"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:35.971403" elapsed="0.064666"/>
</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-07-28T01:54:35.916781" elapsed="0.119345"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:35.909713" elapsed="0.126581"/>
</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-07-28T01:54:36.048128" 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-07-28T01:54:36.048291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:36.047946" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.049039" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.048486" elapsed="0.000583"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.049529" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.049223" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.050026" 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-07-28T01:54:36.049751" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.050533" 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-07-28T01:54:36.050238" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.051429" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:36.050710" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.052007" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.051672" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.052667" 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-07-28T01:54:36.052286" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.053222" 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-07-28T01:54:36.052886" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.053813" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:36.053416" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.054380" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:36.054021" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.054959" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.054593" 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-07-28T01:54:36.047606" elapsed="0.007452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.055648" 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-07-28T01:54:36.055209" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.056123" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:36.055875" elapsed="0.000347"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.064399" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.064050" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.071783" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.072012" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.072120" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.064574" elapsed="0.007572"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.072626" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.072349" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.075294" 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-07-28T01:54:36.072878" elapsed="0.002513"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.077321" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.075480" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.075444" elapsed="0.001947"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.080529" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.080576" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.077580" elapsed="0.003018"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.082478" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.080673" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.080654" elapsed="0.001905"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.082592" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:36.082788" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.082831" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.063732" elapsed="0.019121"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.085154" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.083438" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.083421" elapsed="0.001801"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.085792" 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-07-28T01:54:36.085372" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.086376" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.086020" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.086466" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:36.086647" 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-07-28T01:54:36.083064" elapsed="0.003608"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.086827" 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-07-28T01:54:36.063113" elapsed="0.024165"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.095139" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.094786" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.107552" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.108055" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.108377" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.095303" elapsed="0.013104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.108931" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.108591" elapsed="0.000387"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.114425" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.109122" elapsed="0.007622"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.121651" elapsed="0.000035"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.116939" elapsed="0.004800"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.116893" elapsed="0.004870"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.153194" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.153263" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.121953" elapsed="0.031336"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.155571" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.153478" elapsed="0.002157"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.153428" elapsed="0.002277"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.155747" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:36.155985" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.156030" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.094396" elapsed="0.061657"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.158622" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.156864" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.156845" elapsed="0.001845"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.159424" 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-07-28T01:54:36.158891" elapsed="0.000575"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.160070" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.159673" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.160149" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.160330" 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-07-28T01:54:36.156369" elapsed="0.003986"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.160567" elapsed="0.000480"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.093785" elapsed="0.067329"/>
</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-07-28T01:54:36.043961" elapsed="0.117217"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.036661" elapsed="0.124651"/>
</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-07-28T01:54:36.173858" 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-07-28T01:54:36.174046" 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-07-28T01:54:36.173694" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.174765" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6e30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.174256" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.175268" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.174965" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.175755" 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-07-28T01:54:36.175467" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.176221" 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-07-28T01:54:36.175936" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.177201" 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-07-28T01:54:36.176402" elapsed="0.000831"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.177787" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.177395" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.178405" 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-07-28T01:54:36.178061" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.178984" 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-07-28T01:54:36.178633" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.179520" 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-07-28T01:54:36.179184" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.180068" 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-07-28T01:54:36.179735" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.180625" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6e30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.180270" 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-07-28T01:54:36.173301" elapsed="0.007430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.181479" 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-07-28T01:54:36.181006" elapsed="0.000507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.181959" 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-07-28T01:54:36.181670" 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-07-28T01:54:36.190741" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.190223" elapsed="0.000556"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.198208" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.198556" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.198681" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.191015" elapsed="0.007692"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.199207" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.198934" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.202299" 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-07-28T01:54:36.199436" elapsed="0.003040"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.204535" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.202581" elapsed="0.002049"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.202546" elapsed="0.002110"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.209119" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.209185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.204858" elapsed="0.004359"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.212326" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.209375" elapsed="0.003035"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.209347" elapsed="0.003097"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.212514" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:36.212876" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.212938" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.189722" elapsed="0.023247"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.216490" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.213895" elapsed="0.002662"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.213869" elapsed="0.002718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.217565" 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-07-28T01:54:36.216890" elapsed="0.000713"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.218248" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.217854" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.218324" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:36.218567" 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-07-28T01:54:36.213297" elapsed="0.005297"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.218754" 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-07-28T01:54:36.189068" elapsed="0.030195"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.228092" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.227727" elapsed="0.000399"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.241781" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.243196" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.244222" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.228310" elapsed="0.015981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.245891" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.244990" elapsed="0.001014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.251345" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.246422" elapsed="0.005965"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.254414" elapsed="0.000066"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.252496" elapsed="0.002024"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.252467" elapsed="0.002076"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.284591" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.284649" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.254695" 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-07-28T01:54:36.286796" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.284851" elapsed="0.002007"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.284787" elapsed="0.002096"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.286920" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:36.287229" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.287285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.227248" elapsed="0.060061"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.289747" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.288026" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.288007" elapsed="0.001807"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.290497" 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-07-28T01:54:36.289969" elapsed="0.000556"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.291129" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.290732" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.291205" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.291424" 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-07-28T01:54:36.287627" 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-07-28T01:54:36.291627" 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-07-28T01:54:36.226350" elapsed="0.065793"/>
</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-07-28T01:54:36.168995" elapsed="0.123244"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.161590" elapsed="0.130783"/>
</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-07-28T01:54:36.304101" 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-07-28T01:54:36.304273" 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-07-28T01:54:36.303953" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.304924" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.304473" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.305393" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.305107" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.305862" 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-07-28T01:54:36.305590" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.306305" 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-07-28T01:54:36.306036" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.307182" 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-07-28T01:54:36.306496" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.307721" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.307368" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.308378" 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-07-28T01:54:36.308017" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.309017" 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-07-28T01:54:36.308644" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.309588" 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-07-28T01:54:36.309213" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.310101" 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-07-28T01:54:36.309783" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.310673" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.310294" elapsed="0.000420"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:36.303611" elapsed="0.007158"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.311308" 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-07-28T01:54:36.310919" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.311798" 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-07-28T01:54:36.311550" 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-07-28T01:54:36.320021" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.319627" elapsed="0.000430"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.326904" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.327181" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.327301" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.320212" elapsed="0.007114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.327846" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.327564" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.330583" 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-07-28T01:54:36.328036" elapsed="0.002697"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.332798" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.330834" elapsed="0.002022"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.330802" elapsed="0.002079"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.337203" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.337271" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.333030" elapsed="0.004273"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.340163" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.337425" elapsed="0.002843"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.337394" elapsed="0.002914"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.340361" elapsed="0.000054"/>
</return>
<msg time="2026-07-28T01:54:36.340797" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.340860" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.319290" elapsed="0.021601"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.344291" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.341893" elapsed="0.002463"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.341865" elapsed="0.002522"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.345434" 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-07-28T01:54:36.344726" elapsed="0.000768"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.346157" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.345736" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.346231" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:36.346412" 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-07-28T01:54:36.341303" elapsed="0.005134"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.346614" 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-07-28T01:54:36.318681" elapsed="0.028415"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.355127" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.354813" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.363413" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.363951" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.364272" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.355292" elapsed="0.009007"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.364787" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.364481" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.369938" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.364978" elapsed="0.007017"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.376428" elapsed="0.000067"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.372167" elapsed="0.004412"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.372121" elapsed="0.004513"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.406294" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.406360" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.377028" elapsed="0.029358"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.408623" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.406556" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.406511" elapsed="0.002223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.408774" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:36.409049" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.409095" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.354414" elapsed="0.054704"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.411634" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.409881" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.409863" elapsed="0.001839"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.412401" 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-07-28T01:54:36.411864" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.413096" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.412687" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.413174" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.413400" 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-07-28T01:54:36.409439" elapsed="0.003987"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.413608" elapsed="0.000503"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.353780" elapsed="0.060401"/>
</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-07-28T01:54:36.300021" elapsed="0.114222"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.292614" elapsed="0.121760"/>
</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-07-28T01:54:36.430161" 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-07-28T01:54:36.430646" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.429780" elapsed="0.000938"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.432436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.431192" elapsed="0.001342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.433845" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.432914" elapsed="0.000997"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.435154" 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-07-28T01:54:36.434332" elapsed="0.000881"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.436601" 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-07-28T01:54:36.435661" elapsed="0.001021"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.437677" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.436909" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.438320" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.437916" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.439033" 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-07-28T01:54:36.438659" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.439664" 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-07-28T01:54:36.439234" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.440255" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.439899" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.440899" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.440476" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.441485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.441103" elapsed="0.000425"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:36.428355" elapsed="0.013273"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.442253" 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-07-28T01:54:36.441791" elapsed="0.000530"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.442788" level="INFO">&lt;?xml version="1.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-07-28T01:54:36.442497" 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-07-28T01:54:36.451582" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.451202" elapsed="0.000445"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.457895" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.458236" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.458357" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.451786" elapsed="0.006636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.458918" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.458615" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.461751" 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-07-28T01:54:36.459109" 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-07-28T01:54:36.464250" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.461976" elapsed="0.002336"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.461910" elapsed="0.002427"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.469084" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.469150" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.464523" elapsed="0.004660"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.471827" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.469292" elapsed="0.002615"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.469265" elapsed="0.002679"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.472005" elapsed="0.000054"/>
</return>
<msg time="2026-07-28T01:54:36.472308" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.472370" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.450834" elapsed="0.021567"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.475571" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.473271" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.473245" elapsed="0.002423"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.476517" 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-07-28T01:54:36.475894" elapsed="0.000661"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.477384" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.476865" elapsed="0.000561"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.477521" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:36.477769" 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-07-28T01:54:36.472789" elapsed="0.005005"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.477969" 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-07-28T01:54:36.450130" elapsed="0.028321"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.486499" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.486164" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.499548" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.500710" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.501396" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.486665" elapsed="0.014822"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.502565" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.501897" elapsed="0.000775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.509198" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.503028" elapsed="0.007457"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.512394" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.510583" elapsed="0.001888"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.510556" elapsed="0.001942"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.541233" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.541293" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.512675" elapsed="0.028645"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.543356" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.541465" elapsed="0.001962"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.541415" elapsed="0.002056"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.543514" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:36.543749" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.543805" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.485777" elapsed="0.058054"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.546238" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.544526" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.544505" elapsed="0.001802"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.547013" 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-07-28T01:54:36.546505" elapsed="0.000539"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.547618" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.547218" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.547695" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:36.547887" 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-07-28T01:54:36.544118" elapsed="0.003795"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.548084" 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-07-28T01:54:36.485091" elapsed="0.063568"/>
</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-07-28T01:54:36.422282" elapsed="0.126442"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.414791" elapsed="0.134076"/>
</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-07-28T01:54:36.560834" 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-07-28T01:54:36.561007" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.560671" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.561671" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.561210" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.562179" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.561864" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.562685" 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-07-28T01:54:36.562369" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.563170" 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-07-28T01:54:36.562883" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.563997" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.563370" elapsed="0.000658"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.564604" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.564194" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.565231" 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-07-28T01:54:36.564881" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.565813" 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-07-28T01:54:36.565464" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.566369" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.566028" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.566942" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.566595" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.567514" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.567149" elapsed="0.000419"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:36.560244" elapsed="0.007384"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.568201" 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-07-28T01:54:36.567787" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.568730" level="INFO">&lt;?xml version="1.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-07-28T01:54:36.568395" 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-07-28T01:54:36.576898" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.576536" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.583804" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.584018" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.584138" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.577071" elapsed="0.007095"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.584862" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.584339" elapsed="0.000581"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.587387" 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-07-28T01:54:36.585090" elapsed="0.002359"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.589443" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.587560" elapsed="0.001953"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.587537" elapsed="0.002042"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.593907" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.593986" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.589775" elapsed="0.004251"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.597332" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.594155" elapsed="0.003275"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.594122" elapsed="0.003387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.597565" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:36.597849" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.597900" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.576176" elapsed="0.021751"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.600621" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.598596" elapsed="0.002081"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.598574" elapsed="0.002131"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.601401" 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-07-28T01:54:36.600887" elapsed="0.000544"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.602076" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.601656" elapsed="0.000450"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.602165" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:36.602368" 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-07-28T01:54:36.598183" elapsed="0.004214"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.602621" elapsed="0.000481"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.575581" elapsed="0.027594"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.611567" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.611225" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.624747" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.625419" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.625865" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.611735" elapsed="0.014169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.626547" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.626150" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.630501" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.626826" elapsed="0.004983"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.634511" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.631917" elapsed="0.002666"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.631888" elapsed="0.002728"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.663150" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.663198" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.634819" elapsed="0.028402"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.665382" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.663315" elapsed="0.002194"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.663295" elapsed="0.002244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.665583" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:36.665869" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.665947" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.610829" elapsed="0.055195"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.669273" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.666910" elapsed="0.002445"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.666883" elapsed="0.002495"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.670020" 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-07-28T01:54:36.669554" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.670682" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.670257" elapsed="0.000451"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.670758" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:36.670951" 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-07-28T01:54:36.666344" elapsed="0.004632"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.671172" elapsed="0.000461"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.610170" elapsed="0.061528"/>
</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-07-28T01:54:36.556442" elapsed="0.115324"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.549227" elapsed="0.122722"/>
</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-07-28T01:54:36.685896" 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-07-28T01:54:36.686083" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.685731" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.686745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.686289" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.687234" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.686932" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.687733" 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-07-28T01:54:36.687426" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.688203" 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-07-28T01:54:36.687916" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.689034" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.688396" elapsed="0.000670"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.689605" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.689227" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.690203" 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-07-28T01:54:36.689861" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.690767" 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-07-28T01:54:36.690414" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.691365" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.690988" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.692345" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.691614" elapsed="0.000944"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.693169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.692829" 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-07-28T01:54:36.685346" elapsed="0.007935"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.693862" 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-07-28T01:54:36.693434" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.694312" level="INFO">&lt;?xml version="1.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-07-28T01:54:36.694061" 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-07-28T01:54:36.702431" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.702103" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.708416" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.708686" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.708815" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.702609" elapsed="0.006236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.709275" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.709015" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.711603" 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-07-28T01:54:36.709496" elapsed="0.002164"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.713612" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.711738" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.711716" elapsed="0.001976"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.788829" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.788937" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.713838" elapsed="0.075129"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.791158" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.789108" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.789069" elapsed="0.002219"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.791329" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:36.791585" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.791630" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.701771" elapsed="0.089882"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.794181" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.792435" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.792384" elapsed="0.001905"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.795065" 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-07-28T01:54:36.794466" elapsed="0.000627"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.795670" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.795257" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.795747" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.795972" 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-07-28T01:54:36.791976" elapsed="0.004021"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.796160" 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-07-28T01:54:36.701160" elapsed="0.095627"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.805354" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.804993" elapsed="0.000388"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.820238" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.821680" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.822412" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.805561" elapsed="0.017004"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.823682" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.822995" elapsed="0.000857"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.829584" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.824178" elapsed="0.006427"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.832668" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.830682" elapsed="0.002038"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.830662" elapsed="0.002081"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.860354" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.860402" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.832888" elapsed="0.027553"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.862362" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.860575" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.860552" elapsed="0.001893"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.862530" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:36.862737" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:36.862817" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.804573" elapsed="0.058269"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.865209" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.863450" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.863432" elapsed="0.001845"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.865941" 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-07-28T01:54:36.865430" elapsed="0.000539"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.866547" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.866134" elapsed="0.000439"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.866623" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:36.866843" 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-07-28T01:54:36.863072" elapsed="0.003797"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.867030" elapsed="0.000455"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.803846" elapsed="0.063703"/>
</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-07-28T01:54:36.679846" elapsed="0.187762"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.672370" elapsed="0.195415"/>
</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-07-28T01:54:36.880016" 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-07-28T01:54:36.880316" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.879828" elapsed="0.000520"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:36.881040" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:36.880550" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.881612" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:36.881266" elapsed="0.000374"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.882106" 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-07-28T01:54:36.881794" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:36.882616" 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-07-28T01:54:36.882283" elapsed="0.000393"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.883633" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.882832" elapsed="0.000833"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.884236" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.883861" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.884923" 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-07-28T01:54:36.884552" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.885501" 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-07-28T01:54:36.885156" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.886053" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:36.885695" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.886658" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:36.886248" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.887218" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:36.886856" 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-07-28T01:54:36.879441" elapsed="0.007874"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.887948" 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-07-28T01:54:36.887517" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.888427" level="INFO">&lt;?xml version="1.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-07-28T01:54:36.888164" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.896823" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.896464" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.903161" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.903450" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:36.903583" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.896981" elapsed="0.006628"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.904075" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.903813" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.907900" 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-07-28T01:54:36.904353" elapsed="0.003636"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.910900" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.908090" elapsed="0.002881"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.908062" elapsed="0.002941"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.916096" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.916162" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:36.911253" elapsed="0.004940"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:36.921074" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.916346" elapsed="0.004865"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.916319" elapsed="0.004947"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:36.921340" elapsed="0.000170"/>
</return>
<msg time="2026-07-28T01:54:36.922005" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:36.922113" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:36.896063" elapsed="0.026102"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.928126" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.923573" elapsed="0.004670"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.923530" elapsed="0.004762"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.929342" 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-07-28T01:54:36.928858" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.930026" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:36.929592" elapsed="0.000462"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:36.930104" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:36.930335" 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-07-28T01:54:36.922782" elapsed="0.007579"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:36.930576" elapsed="0.000455"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:36.895468" elapsed="0.035628"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.940523" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:36.940091" elapsed="0.000461"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:36.954160" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:36.954962" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:36.955438" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:36.940745" elapsed="0.014754"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.956242" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:36.955793" elapsed="0.000517"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:36.964385" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:36.956648" elapsed="0.009203"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:36.968822" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:36.965960" elapsed="0.002985"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.965932" elapsed="0.003049"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:36.998392" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:36.998443" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:36.969198" elapsed="0.029285"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.000512" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:36.998569" elapsed="0.002040"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:36.998548" elapsed="0.002089"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.000671" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:37.000892" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.000937" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:36.939649" elapsed="0.061311"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.003377" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.001613" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.001594" elapsed="0.001907"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.004152" 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-07-28T01:54:37.003666" elapsed="0.000514"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.004804" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.004362" elapsed="0.000469"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.004883" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.005121" 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-07-28T01:54:37.001251" elapsed="0.003898"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.005316" 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-07-28T01:54:36.938842" elapsed="0.067019"/>
</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-07-28T01:54:36.875727" elapsed="0.130207"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:36.868032" elapsed="0.138033"/>
</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-07-28T01:54:37.018447" 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-07-28T01:54:37.018633" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.018247" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.019354" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.018870" elapsed="0.000512"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.019904" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.019606" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.020769" 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-07-28T01:54:37.020092" elapsed="0.000745"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.022036" 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-07-28T01:54:37.021255" elapsed="0.000843"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.024519" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.022544" elapsed="0.002050"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.025962" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.025019" elapsed="0.001040"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.027312" 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-07-28T01:54:37.026585" elapsed="0.000918"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.028810" 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-07-28T01:54:37.027856" elapsed="0.001056"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.030139" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.029255" elapsed="0.001069"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.031684" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.030778" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.032967" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.032216" elapsed="0.000838"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:37.017861" elapsed="0.015254"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.033744" 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-07-28T01:54:37.033270" elapsed="0.000506"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.034219" level="INFO">&lt;?xml version="1.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-07-28T01:54:37.033972" 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-07-28T01:54:37.042523" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.042193" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.048827" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.049117" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.049229" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.042716" elapsed="0.006538"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.049689" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.049415" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.052176" 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-07-28T01:54:37.049915" elapsed="0.002323"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.054672" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.052356" elapsed="0.002386"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.052289" elapsed="0.002485"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.059375" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.059440" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.054971" elapsed="0.004522"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.062020" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.059602" elapsed="0.002496"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.059575" elapsed="0.002556"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.062176" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:37.062524" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.062591" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.041836" elapsed="0.020787"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.065652" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.063438" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.063413" elapsed="0.002307"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.066273" 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-07-28T01:54:37.065869" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.066883" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.066482" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.066959" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.067183" 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-07-28T01:54:37.062922" elapsed="0.004287"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.067369" 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-07-28T01:54:37.041228" elapsed="0.026669"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.076506" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.076048" elapsed="0.000494"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.089382" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.090480" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.091202" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.076711" elapsed="0.014620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.092610" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.091803" elapsed="0.000924"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.097950" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.093123" elapsed="0.005749"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.100733" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.098945" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.098926" elapsed="0.001879"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.127747" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.127795" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.100947" elapsed="0.026871"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.129635" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.127899" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.127879" elapsed="0.001839"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.129750" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:37.129951" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.129995" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.075632" elapsed="0.054386"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.132178" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.130596" elapsed="0.001626"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.130578" elapsed="0.001667"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.132874" 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-07-28T01:54:37.132437" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.133422" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.133066" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.133524" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:37.133709" 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-07-28T01:54:37.130239" 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-07-28T01:54:37.133893" 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-07-28T01:54:37.074922" elapsed="0.059424"/>
</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-07-28T01:54:37.014104" elapsed="0.120298"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.006438" elapsed="0.128100"/>
</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-07-28T01:54:37.145865" 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-07-28T01:54:37.146010" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.145723" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.146707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.146229" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.147210" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.146923" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.147752" 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-07-28T01:54:37.147424" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.148240" 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-07-28T01:54:37.147934" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.149285" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.148490" elapsed="0.000826"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.149872" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.149488" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.150542" 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-07-28T01:54:37.150148" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.151112" 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-07-28T01:54:37.150739" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.151712" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.151342" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.152355" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.151926" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.152952" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.152575" elapsed="0.000420"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:37.145332" elapsed="0.007718"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.153737" 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-07-28T01:54:37.153275" elapsed="0.000494"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.154246" level="INFO">&lt;?xml version="1.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-07-28T01:54:37.153962" elapsed="0.000349"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.162640" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.162315" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.168369" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.168668" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.168788" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.162837" elapsed="0.005976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.169307" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.169012" elapsed="0.000378"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.172091" 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-07-28T01:54:37.169556" elapsed="0.002637"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.174201" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.172283" elapsed="0.001969"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.172247" elapsed="0.002028"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.178382" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.178470" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.174463" elapsed="0.004044"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.181261" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.178616" elapsed="0.002729"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.178590" elapsed="0.002790"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.181428" elapsed="0.000060"/>
</return>
<msg time="2026-07-28T01:54:37.181731" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.181808" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.161964" elapsed="0.019879"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.184966" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.182660" elapsed="0.002371"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.182633" elapsed="0.002429"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.185890" 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-07-28T01:54:37.185266" elapsed="0.000663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.186717" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.186175" elapsed="0.000580"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.186824" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:37.187092" 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-07-28T01:54:37.182144" 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-07-28T01:54:37.187361" elapsed="0.000587"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.161325" elapsed="0.026712"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.196488" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.196124" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.209413" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.210778" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.211627" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.196652" elapsed="0.015043"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.212934" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.212148" elapsed="0.001001"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.218936" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.213599" elapsed="0.006842"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.223394" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.220572" elapsed="0.002912"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.220543" elapsed="0.003030"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.259543" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.259596" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.223793" elapsed="0.035828"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.261799" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.259766" elapsed="0.002100"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.259739" elapsed="0.002194"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.261973" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:37.262198" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.262288" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.195733" elapsed="0.066583"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.264840" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.263037" elapsed="0.001895"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.263016" elapsed="0.001943"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.265695" 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-07-28T01:54:37.265118" elapsed="0.000608"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.266317" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.265901" elapsed="0.000443"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.266395" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.266644" 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-07-28T01:54:37.262586" elapsed="0.004085"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.266834" elapsed="0.000471"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.195065" elapsed="0.072306"/>
</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-07-28T01:54:37.141696" elapsed="0.125810"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.134846" elapsed="0.132798"/>
</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-07-28T01:54:37.280027" 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-07-28T01:54:37.280195" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.279873" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.280943" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec5e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.280464" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.281491" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.281132" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.282008" 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-07-28T01:54:37.281673" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.282537" 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-07-28T01:54:37.282188" elapsed="0.000376"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.283397" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.282717" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.284005" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.283605" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.284771" 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-07-28T01:54:37.284361" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.285359" 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-07-28T01:54:37.285011" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.285943" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.285623" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.286583" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.286193" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.287129" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec5e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.286790" 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-07-28T01:54:37.279484" elapsed="0.007781"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.287894" 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-07-28T01:54:37.287434" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.288403" level="INFO">&lt;?xml version="1.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-07-28T01:54:37.288079" elapsed="0.000397"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.297715" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.297324" elapsed="0.000418"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.303476" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.303743" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.303857" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.297886" elapsed="0.005997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.304404" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.304047" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.306907" 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-07-28T01:54:37.304661" elapsed="0.002303"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.309204" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.307081" elapsed="0.002199"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.307058" elapsed="0.002299"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.313772" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.313839" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.309600" 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-07-28T01:54:37.316803" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.313990" elapsed="0.002891"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.313960" elapsed="0.002953"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.316949" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:37.317154" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.317198" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.296929" elapsed="0.020291"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.319661" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.317884" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.317864" elapsed="0.001866"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.320383" 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-07-28T01:54:37.319881" elapsed="0.000583"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.321070" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.320646" elapsed="0.000452"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.321187" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:37.321384" 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-07-28T01:54:37.317503" elapsed="0.003909"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.321588" elapsed="0.000499"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.296054" elapsed="0.026099"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.330833" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.330483" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.343758" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.345133" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.346004" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.331001" elapsed="0.015085"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.347268" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.346564" elapsed="0.000834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.353323" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.347840" elapsed="0.006477"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.356296" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.354397" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.354377" elapsed="0.001993"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.390287" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.390336" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.356586" elapsed="0.033773"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.392421" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.390445" elapsed="0.002050"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.390424" elapsed="0.002096"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.392553" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:37.392816" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.392861" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.330068" elapsed="0.062816"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.395314" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.393576" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.393555" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.396087" 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-07-28T01:54:37.395588" elapsed="0.000528"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.396734" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.396305" elapsed="0.000457"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.396813" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:37.396998" 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-07-28T01:54:37.393162" elapsed="0.003903"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.397233" 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-07-28T01:54:37.329322" elapsed="0.068449"/>
</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-07-28T01:54:37.275774" elapsed="0.122068"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.268031" elapsed="0.129938"/>
</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-07-28T01:54:37.410206" 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-07-28T01:54:37.410367" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.410019" elapsed="0.000388"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.411122" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.410630" elapsed="0.000521"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.411719" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.411360" elapsed="0.000389"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.412340" 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-07-28T01:54:37.411914" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.412888" 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-07-28T01:54:37.412548" elapsed="0.000367"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.413956" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.413118" elapsed="0.000872"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.414601" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.414190" elapsed="0.000456"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.415289" 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-07-28T01:54:37.414903" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.415940" 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-07-28T01:54:37.415546" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.416553" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:37.416154" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.417190" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:37.416806" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.417836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.417437" elapsed="0.000486"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:37.409624" elapsed="0.008363"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.418651" 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-07-28T01:54:37.418141" elapsed="0.000545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.419371" level="INFO">&lt;?xml version="1.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-07-28T01:54:37.418839" elapsed="0.000599"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.428250" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.427861" elapsed="0.000417"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.435017" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.435508" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.435726" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.428420" elapsed="0.007346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.436607" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.436111" elapsed="0.000618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.440618" 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-07-28T01:54:37.436954" elapsed="0.003806"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.443875" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.440869" elapsed="0.003090"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.440840" elapsed="0.003151"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.449808" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.449935" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.444276" elapsed="0.005696"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.453044" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.450082" elapsed="0.003021"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.450054" elapsed="0.003073"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.453163" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:54:37.453412" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.453472" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.427487" elapsed="0.026017"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.456293" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.454156" elapsed="0.002186"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.454137" elapsed="0.002227"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.457044" 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-07-28T01:54:37.456577" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.457718" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.457249" elapsed="0.000496"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.457801" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:37.457985" 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-07-28T01:54:37.453771" 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-07-28T01:54:37.458171" elapsed="0.000462"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.426795" elapsed="0.031905"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.467732" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.467355" elapsed="0.000404"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.479535" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.480354" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.480919" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.467931" elapsed="0.013039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.481660" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.481251" elapsed="0.000533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.485892" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.482054" elapsed="0.005340"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.490482" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.487523" elapsed="0.003034"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.487493" elapsed="0.003097"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.526712" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.526763" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.490850" elapsed="0.035938"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.528907" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.526887" elapsed="0.002079"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.526862" elapsed="0.002129"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.529025" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:37.529286" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.529332" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.466919" elapsed="0.062436"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.531804" elapsed="0.000054"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.530071" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.530052" elapsed="0.001862"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.532654" 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-07-28T01:54:37.532071" elapsed="0.000611"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.533306" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.532850" elapsed="0.000483"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.533384" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.533630" 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-07-28T01:54:37.529622" elapsed="0.004035"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.533826" 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-07-28T01:54:37.466175" elapsed="0.068222"/>
</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-07-28T01:54:37.405862" elapsed="0.128627"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.398339" elapsed="0.136282"/>
</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-07-28T01:54:37.547978" 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-07-28T01:54:37.548268" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.547721" elapsed="0.000591"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.549321" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.548561" elapsed="0.000802"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.550090" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.549609" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.550886" 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-07-28T01:54:37.550402" elapsed="0.000521"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.551630" 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-07-28T01:54:37.551144" elapsed="0.000572"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.553069" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:37.551950" elapsed="0.001163"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.553978" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.553400" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.554945" 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-07-28T01:54:37.554384" elapsed="0.000623"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.555807" 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-07-28T01:54:37.555241" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.556746" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.556188" elapsed="0.000639"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.557426" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:37.557047" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.558040" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.557660" elapsed="0.000463"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:37.547146" elapsed="0.011037"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.558814" 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-07-28T01:54:37.558347" elapsed="0.000535"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.559298" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.559047" 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-07-28T01:54:37.568309" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.567918" elapsed="0.000419"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.575626" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.576239" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.576568" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.568488" elapsed="0.008151"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.577802" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.577068" elapsed="0.000865"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.583755" 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-07-28T01:54:37.578314" elapsed="0.005675"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.586471" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.584249" elapsed="0.002274"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.584196" elapsed="0.002351"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.589657" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.589705" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.586692" elapsed="0.003036"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.591579" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.589804" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.589785" elapsed="0.001878"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.591697" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.591907" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.591955" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.567546" elapsed="0.024432"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.594232" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.592602" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.592583" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.594904" 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-07-28T01:54:37.594478" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.595492" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.595110" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.595582" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:37.595767" 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-07-28T01:54:37.592234" elapsed="0.003559"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.595952" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.566865" elapsed="0.029582"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.604629" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.604296" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.617580" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.618651" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.619307" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.604797" elapsed="0.014570"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.620439" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.619763" elapsed="0.000816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.625490" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.620914" elapsed="0.005500"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.628261" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.626501" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.626480" elapsed="0.001854"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.659691" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.659742" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.628496" elapsed="0.031269"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.661694" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.659865" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.659842" elapsed="0.001935"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.661818" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:37.662036" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.662081" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.603865" elapsed="0.058239"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.664408" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.662731" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.662711" elapsed="0.001781"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.665100" 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-07-28T01:54:37.664654" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.665680" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.665294" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.665757" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.665939" 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-07-28T01:54:37.662344" 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-07-28T01:54:37.666144" 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-07-28T01:54:37.603194" elapsed="0.063445"/>
</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-07-28T01:54:37.542643" elapsed="0.124056"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.534931" elapsed="0.131909"/>
</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-07-28T01:54:37.678218" 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-07-28T01:54:37.678370" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.678074" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.679012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03234c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.678584" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.679508" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.679196" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.679971" 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-07-28T01:54:37.679688" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.680486" 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-07-28T01:54:37.680166" elapsed="0.000348"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.681318" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:37.680667" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.681891" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.681544" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.682527" 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-07-28T01:54:37.682163" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.683073" 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-07-28T01:54:37.682730" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.683618" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.683274" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.684198" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:37.683822" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.684755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03234c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.684400" 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-07-28T01:54:37.677723" elapsed="0.007133"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.685405" 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-07-28T01:54:37.685006" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.685850" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.685607" 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-07-28T01:54:37.693992" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.693684" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.700291" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.700524" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.700644" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.694149" elapsed="0.006522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.701108" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.700850" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.703443" 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-07-28T01:54:37.701309" elapsed="0.002243"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.705507" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.703625" elapsed="0.001932"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.703606" elapsed="0.001977"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.708576" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.708624" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.705734" elapsed="0.002921"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.711237" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.708743" elapsed="0.002573"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.708719" elapsed="0.002631"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.711397" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:37.711741" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.711829" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.693335" elapsed="0.018627"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.715138" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.712813" elapsed="0.002390"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.712788" elapsed="0.002445"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.716132" 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-07-28T01:54:37.715477" elapsed="0.000693"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.716953" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.716413" elapsed="0.000577"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.717062" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:37.717332" 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-07-28T01:54:37.712299" elapsed="0.005069"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.717631" elapsed="0.000562"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.692758" elapsed="0.025526"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.727310" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.727008" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.740432" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.741820" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.742596" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.727497" elapsed="0.015164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.743937" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.743210" elapsed="0.000946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.750230" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.744607" elapsed="0.007119"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.754735" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.751850" elapsed="0.002955"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.751821" elapsed="0.003017"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.791605" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.791654" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.755101" elapsed="0.036577"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.793730" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.791763" elapsed="0.002026"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.791743" elapsed="0.002073"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.793852" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:37.794111" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.794156" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.726614" elapsed="0.067565"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.796657" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.794830" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.794812" elapsed="0.001913"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.797373" 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-07-28T01:54:37.796892" elapsed="0.000508"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.798044" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.797631" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.798123" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.798319" 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-07-28T01:54:37.794471" elapsed="0.003875"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.798525" elapsed="0.000450"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.725955" elapsed="0.073087"/>
</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-07-28T01:54:37.674281" elapsed="0.124821"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.667144" elapsed="0.132095"/>
</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-07-28T01:54:37.811504" 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-07-28T01:54:37.811656" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:37.811294" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.812412" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.811887" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.813004" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.812660" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.813535" 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-07-28T01:54:37.813188" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.814053" 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-07-28T01:54:37.813715" elapsed="0.000365"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.815015" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.814238" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.815628" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.815221" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.816336" 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-07-28T01:54:37.815951" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.816948" 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-07-28T01:54:37.816560" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.817541" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:37.817192" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.818173" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.817794" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.818784" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.818388" elapsed="0.000442"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:37.810949" elapsed="0.007950"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.819550" 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-07-28T01:54:37.819090" elapsed="0.000497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.820098" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.819749" elapsed="0.000410"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.829023" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.828696" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.834936" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.835156" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.835314" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.829231" elapsed="0.006111"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.835845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.835528" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.838366" 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-07-28T01:54:37.836113" elapsed="0.002401"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.841415" elapsed="0.000072"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.838591" elapsed="0.002984"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.838570" elapsed="0.003063"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.849276" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.849383" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.842000" elapsed="0.007433"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.853214" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.849656" elapsed="0.003614"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.849611" elapsed="0.003685"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.853329" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.853544" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.853589" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.828304" elapsed="0.025308"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.855851" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.854202" elapsed="0.001694"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.854183" elapsed="0.001751"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.856526" 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-07-28T01:54:37.856088" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.857117" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.856727" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.857194" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.857375" 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-07-28T01:54:37.853854" 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-07-28T01:54:37.857577" 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-07-28T01:54:37.827652" elapsed="0.030393"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.866354" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.866042" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.876906" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.878112" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:37.878884" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.866549" elapsed="0.012403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.880125" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.879371" elapsed="0.000880"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.885620" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:37.880659" elapsed="0.005901"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.888470" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.886636" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.886616" elapsed="0.001929"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.919827" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.919876" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:37.888701" elapsed="0.031234"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.921793" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.920020" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.920000" elapsed="0.001884"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.921919" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:37.922121" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:37.922165" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.865648" elapsed="0.056539"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.924353" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.922760" elapsed="0.001638"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.922741" elapsed="0.001679"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.925003" 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-07-28T01:54:37.924589" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.925568" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.925193" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.925644" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.925825" 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-07-28T01:54:37.922405" 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-07-28T01:54:37.926009" elapsed="0.000480"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:37.864991" elapsed="0.061563"/>
</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-07-28T01:54:37.807240" elapsed="0.119373"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.799599" elapsed="0.127136"/>
</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-07-28T01:54:37.937922" 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-07-28T01:54:37.938072" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.937778" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:37.938689" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:37.938253" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.939156" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:37.938873" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.939622" 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-07-28T01:54:37.939335" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:37.940095" 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-07-28T01:54:37.939802" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.940961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:37.940273" elapsed="0.000718"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.941497" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.941147" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.942079" 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-07-28T01:54:37.941746" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.942621" 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-07-28T01:54:37.942275" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.943133" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.942817" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.943668" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:37.943330" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.944234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:37.943864" 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-07-28T01:54:37.937425" elapsed="0.006905"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.944887" 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-07-28T01:54:37.944497" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.945310" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:37.945069" 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-07-28T01:54:37.953247" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.952941" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:37.959846" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:37.960098" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:37.960207" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.953403" elapsed="0.006829"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.960674" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:37.960393" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.962937" 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-07-28T01:54:37.960868" 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-07-28T01:54:37.964982" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.963105" elapsed="0.001945"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.963084" elapsed="0.001998"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:37.969358" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:37.969425" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:37.965280" elapsed="0.004196"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:37.972014" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:37.969584" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.969557" elapsed="0.002569"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:37.972178" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:54:37.972483" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:37.972546" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:37.952621" elapsed="0.019956"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:37.975851" elapsed="0.000102"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:37.973350" elapsed="0.002660"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:37.973326" elapsed="0.002716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.976896" 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-07-28T01:54:37.976255" elapsed="0.000668"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.977523" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:37.977120" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:37.977601" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:37.977782" 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-07-28T01:54:37.972875" elapsed="0.004931"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:37.977962" 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-07-28T01:54:37.952036" elapsed="0.026411"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:37.986824" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:37.986489" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.000772" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.001273" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.001656" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:37.987020" elapsed="0.014666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.002105" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.001849" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.004866" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:38.002292" elapsed="0.003556"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.007836" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.005955" elapsed="0.001953"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.005935" elapsed="0.001996"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.041053" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.041102" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.008075" elapsed="0.033050"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.043129" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.041248" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.041227" elapsed="0.001984"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.043245" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:38.043503" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.043549" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:37.986064" elapsed="0.057507"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.046004" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.044228" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.044210" elapsed="0.001862"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.046735" 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-07-28T01:54:38.046224" elapsed="0.000538"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.047321" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.046926" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.047397" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.047630" 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-07-28T01:54:38.043851" elapsed="0.003805"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.047867" 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-07-28T01:54:37.985402" elapsed="0.062963"/>
</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-07-28T01:54:37.934050" elapsed="0.114371"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:37.927032" elapsed="0.121564"/>
</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-07-28T01:54:38.060478" 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-07-28T01:54:38.060662" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:38.060317" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.061319" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38436a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.060878" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.061836" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.061550" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.062360" 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-07-28T01:54:38.062050" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.062861" 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-07-28T01:54:38.062553" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.063708" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:38.063077" elapsed="0.000662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.064239" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.063911" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.064825" 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-07-28T01:54:38.064499" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.065346" 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-07-28T01:54:38.065019" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.065878" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:38.065556" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.066394" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:38.066074" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.066927" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38436a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.066605" 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-07-28T01:54:38.059949" elapsed="0.007074"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.067575" 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-07-28T01:54:38.067174" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.068011" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:38.067758" 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-07-28T01:54:38.075979" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.075639" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.081450" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.081694" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.081800" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.076137" elapsed="0.005688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.082282" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.082026" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.084669" 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-07-28T01:54:38.082527" elapsed="0.002234"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.086585" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.084833" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.084813" elapsed="0.001845"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.089677" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.089722" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.086798" elapsed="0.002947"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.091646" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.089818" elapsed="0.001887"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.089800" elapsed="0.001929"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.091761" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.092024" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.092070" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.075304" elapsed="0.016788"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.094379" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.092689" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.092671" elapsed="0.001777"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.095110" 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-07-28T01:54:38.094609" elapsed="0.000533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.095728" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.095315" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.095825" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.096008" 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-07-28T01:54:38.092303" 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-07-28T01:54:38.096229" 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-07-28T01:54:38.074742" elapsed="0.021957"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.104975" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.104673" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.117724" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.118396" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.118835" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.105172" elapsed="0.013712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.119509" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.119114" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.123184" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:38.119779" elapsed="0.004731"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.127139" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.124613" elapsed="0.002596"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.124587" elapsed="0.002654"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.153815" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.153863" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.127441" elapsed="0.026445"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.155726" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.153978" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.153958" elapsed="0.001871"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.155864" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:38.156077" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.156123" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.104239" elapsed="0.051906"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.158347" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.156733" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.156715" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.159034" 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-07-28T01:54:38.158607" elapsed="0.000454"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.159616" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.159239" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.159692" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.159901" 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-07-28T01:54:38.156366" 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-07-28T01:54:38.160087" 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-07-28T01:54:38.103516" elapsed="0.057057"/>
</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-07-28T01:54:38.056361" elapsed="0.104270"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.048881" elapsed="0.111876"/>
</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-07-28T01:54:38.171979" 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-07-28T01:54:38.172132" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.171834" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.172774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2b10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.172315" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.173258" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.172958" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.173739" 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-07-28T01:54:38.173443" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.174207" 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-07-28T01:54:38.173922" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.175149" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.174388" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.175705" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.175342" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.176324" 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-07-28T01:54:38.175992" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.176898" 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-07-28T01:54:38.176551" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.177428" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.177094" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.177982" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.177658" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.178539" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2b10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.178192" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:38.171466" elapsed="0.007172"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.179191" 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-07-28T01:54:38.178788" elapsed="0.000434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.179649" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.179375" 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-07-28T01:54:38.187806" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.187441" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.193382" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.193637" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.193748" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.187968" elapsed="0.005805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.194203" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.193945" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.196658" 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-07-28T01:54:38.194428" elapsed="0.002294"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.199366" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.196808" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.196784" elapsed="0.002704"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.204242" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.204308" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.199699" elapsed="0.004641"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.206993" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.204482" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.204434" elapsed="0.002671"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.207164" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:38.207444" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.207540" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.187112" elapsed="0.020465"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.210322" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.208395" elapsed="0.001973"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.208370" elapsed="0.002020"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.210985" 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-07-28T01:54:38.210567" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.211563" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.211176" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.211639" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:38.211874" 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-07-28T01:54:38.207915" elapsed="0.003985"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.212071" 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-07-28T01:54:38.186537" elapsed="0.026022"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.220634" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.220300" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.232333" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.233531" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.234251" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.220791" elapsed="0.013524"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.235349" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.234742" elapsed="0.000765"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.241114" 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;675000000&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;335000000&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;5&lt;/second&gt;&lt;nanosecond&gt;714000000&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;5&lt;/second&gt;&lt;nanosecond&gt;752000000&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;5&lt;/second&gt;&lt;nanosecond&gt;791000000&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;5&lt;/second&gt;&lt;nanosecond&gt;826000000&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;372000000&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;408000000&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;5&lt;/second&gt;&lt;nanosecond&gt;863000000&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;445000000&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;5&lt;/second&gt;&lt;nanosecond&gt;895000000&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;481000000&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;5&lt;/second&gt;&lt;nanosecond&gt;933000000&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;518000000&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;5&lt;/second&gt;&lt;nanosecond&gt;968000000&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;555000000&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;2000000&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;39000000&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;39000000&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;344000000&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;172000000&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;382000000&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;210000000&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;419000000&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;248000000&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;457000000&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;494000000&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;528000000&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;565000000&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;289000000&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;602000000&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;639000000&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;4&lt;/second&gt;&lt;nanosecond&gt;668000000&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;4&lt;/second&gt;&lt;nanosecond&gt;706000000&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;189000000&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;4&lt;/second&gt;&lt;nanosecond&gt;745000000&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;3&lt;/second&gt;&lt;nanosecond&gt;948000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;781000000&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;4&lt;/second&gt;&lt;nanosecond&gt;815000000&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;4&lt;/second&gt;&lt;nanosecond&gt;848000000&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;4&lt;/second&gt;&lt;nanosecond&gt;888000000&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;3&lt;/second&gt;&lt;nanosecond&gt;984000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;4&lt;/second&gt;&lt;nanosecond&gt;925000000&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;22000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;226000000&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;4&lt;/second&gt;&lt;nanosecond&gt;965000000&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;57000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;248000000&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;4000000&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;91000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;303000000&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;128000000&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;75000000&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;110000000&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;151000000&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;632000000&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;592000000&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-07-28T01:54:38.235888" elapsed="0.006286"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.244100" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.242255" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.242233" elapsed="0.001939"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.274244" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.274300" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.244316" elapsed="0.030010"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.276195" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.274408" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.274388" elapsed="0.001899"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.276323" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:38.276543" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.276587" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.219905" elapsed="0.056704"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.278823" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.277196" elapsed="0.001672"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.277178" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.279482" 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-07-28T01:54:38.279042" elapsed="0.000468"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.280073" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.279687" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.280150" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.280333" 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-07-28T01:54:38.276845" elapsed="0.003513"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.280545" 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-07-28T01:54:38.219217" elapsed="0.061800"/>
</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-07-28T01:54:38.168107" elapsed="0.112969"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.161047" elapsed="0.120168"/>
</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-07-28T01:54:38.292539" 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-07-28T01:54:38.292691" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.292380" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.293322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03291c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.292885" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.293818" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.293527" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.294284" 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-07-28T01:54:38.294006" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.294766" 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-07-28T01:54:38.294488" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.295748" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.294944" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.296296" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.295942" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.296898" 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-07-28T01:54:38.296568" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.297449" 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-07-28T01:54:38.297106" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.297999" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.297666" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.298540" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.298199" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.300920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03291c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.298751" elapsed="0.002217"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:38.292031" elapsed="0.008995"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.301604" 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-07-28T01:54:38.301178" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.302051" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.301802" elapsed="0.000313"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.309969" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.309661" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.317744" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.317988" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.318110" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.310130" elapsed="0.008014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.318633" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.318341" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.320977" 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-07-28T01:54:38.318832" elapsed="0.002206"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.322900" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.321109" elapsed="0.001841"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.321089" elapsed="0.001884"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.327134" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.327242" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.323126" elapsed="0.004151"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.329966" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.327381" elapsed="0.002664"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.327356" elapsed="0.002722"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.330124" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:38.330395" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.330523" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.309313" elapsed="0.021246"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.390540" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.331407" elapsed="0.059204"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.331381" elapsed="0.059254"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.391492" 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-07-28T01:54:38.390864" elapsed="0.000658"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.392148" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.391743" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.392226" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:38.392479" 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-07-28T01:54:38.330855" elapsed="0.061652"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.392668" elapsed="0.000458"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:38.308736" elapsed="0.084493"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.401767" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.401366" elapsed="0.000431"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.415681" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.416486" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.417046" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.401931" elapsed="0.015153"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.417741" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.417354" elapsed="0.000504"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.421607" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:38.418059" elapsed="0.004893"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.425593" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.423059" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.423031" elapsed="0.002663"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.459550" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.459608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.425890" elapsed="0.033783"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.461526" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.459756" elapsed="0.001827"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.459737" elapsed="0.001870"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.461640" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:38.461853" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.461897" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.400952" elapsed="0.060967"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.464151" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.462518" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.462497" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.464826" 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-07-28T01:54:38.464382" elapsed="0.000473"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.465393" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.465021" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.465489" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:38.465682" 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-07-28T01:54:38.462153" elapsed="0.003554"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.465865" 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-07-28T01:54:38.400255" elapsed="0.066079"/>
</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-07-28T01:54:38.288639" elapsed="0.177751"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.281531" elapsed="0.185015"/>
</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-07-28T01:54:38.477800" 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-07-28T01:54:38.478083" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.477655" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.478741" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1f330&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.478270" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.479207" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.478924" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.479734" 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-07-28T01:54:38.479384" elapsed="0.000377"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.480207" 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-07-28T01:54:38.479918" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.481186" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.480392" elapsed="0.000827"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.481753" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.481383" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.482342" 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-07-28T01:54:38.481998" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.483062" 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-07-28T01:54:38.482560" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.483638" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.483264" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.484186" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.483854" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.484749" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1f330&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.484387" 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-07-28T01:54:38.477294" elapsed="0.007554"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.485412" 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-07-28T01:54:38.485002" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.485866" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.485616" 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-07-28T01:54:38.493821" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.493494" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.498955" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.499213" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.499327" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.493983" elapsed="0.005371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.499905" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.499571" elapsed="0.000383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.502921" 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-07-28T01:54:38.500102" elapsed="0.002909"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.505688" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.503114" elapsed="0.002645"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.503085" elapsed="0.002718"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.510474" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.510543" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.506006" elapsed="0.004568"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.513084" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.510678" elapsed="0.002462"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.510652" elapsed="0.002516"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.513210" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.513408" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.513466" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.493145" elapsed="0.020346"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.515906" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.514048" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.514030" elapsed="0.001950"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.516566" 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-07-28T01:54:38.516132" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.517124" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.516756" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.517200" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.517393" 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-07-28T01:54:38.513715" elapsed="0.003705"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.517598" 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-07-28T01:54:38.492579" elapsed="0.025488"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.526139" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.525825" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.539008" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.539717" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.540151" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.526297" elapsed="0.013892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.540815" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.540420" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.544432" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:38.541080" elapsed="0.004775"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.548510" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.545959" elapsed="0.002621"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.545932" elapsed="0.002680"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.581594" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.581643" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.548815" elapsed="0.032851"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.583659" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.581747" elapsed="0.001973"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.581727" elapsed="0.002017"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.583778" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.583977" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.584020" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.525416" elapsed="0.058626"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.586252" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.584641" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.584621" elapsed="0.001699"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.586895" 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-07-28T01:54:38.586485" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.587437" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.587085" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.587529" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:54:38.587739" 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-07-28T01:54:38.584273" 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-07-28T01:54:38.587928" 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-07-28T01:54:38.524781" elapsed="0.063609"/>
</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-07-28T01:54:38.473945" elapsed="0.114501"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.466867" elapsed="0.121724"/>
</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-07-28T01:54:38.599776" 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-07-28T01:54:38.599921" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.599632" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.600544" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.600102" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.601006" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.600724" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.601470" 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-07-28T01:54:38.601183" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.601923" 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-07-28T01:54:38.601650" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.602851" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.602098" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.603383" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.603041" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.604017" 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-07-28T01:54:38.603677" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.604578" 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-07-28T01:54:38.604216" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.605111" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.604784" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.605660" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.605310" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.606198" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.605859" 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-07-28T01:54:38.599265" elapsed="0.007031"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.606868" 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-07-28T01:54:38.606471" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.607309" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.607057" 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-07-28T01:54:38.615498" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.615163" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.621546" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.621784" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.621902" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.615691" elapsed="0.006239"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.622358" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.622092" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.625233" 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-07-28T01:54:38.622599" 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-07-28T01:54:38.627998" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.625427" elapsed="0.002643"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.625400" elapsed="0.002701"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.632869" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.632937" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.628296" elapsed="0.004684"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.635603" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.633088" elapsed="0.002598"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.633061" elapsed="0.002659"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.635776" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:54:38.636020" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.636064" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.614836" elapsed="0.021251"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.638294" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.636660" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.636641" elapsed="0.001731"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.638955" 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-07-28T01:54:38.638538" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.639563" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.639159" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.639640" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:38.639826" 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-07-28T01:54:38.636300" 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-07-28T01:54:38.640018" 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-07-28T01:54:38.614237" elapsed="0.026264"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.648665" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.648336" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.662496" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.663633" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.664335" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.648836" elapsed="0.015559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.665423" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.664807" elapsed="0.000761"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.671483" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:38.665916" elapsed="0.006748"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.674545" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.672739" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.672718" elapsed="0.001898"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.704562" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.704610" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.674754" elapsed="0.029879"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.706516" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.704726" elapsed="0.001848"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.704704" elapsed="0.001902"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.706645" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:38.706854" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.706897" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.647937" elapsed="0.058982"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.709182" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.707533" elapsed="0.001696"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.707512" elapsed="0.001739"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.709857" 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-07-28T01:54:38.709407" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.710430" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.710059" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.710524" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.710717" 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-07-28T01:54:38.707155" elapsed="0.003588"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.710913" 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-07-28T01:54:38.647254" elapsed="0.064130"/>
</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-07-28T01:54:38.595957" elapsed="0.115486"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.588885" elapsed="0.122708"/>
</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-07-28T01:54:38.722750" 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-07-28T01:54:38.722898" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.722606" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.723633" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.723091" elapsed="0.000573"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.724120" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.723829" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.724617" 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-07-28T01:54:38.724311" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.725090" 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-07-28T01:54:38.724799" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.726041" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.725274" elapsed="0.000798"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.726595" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.726245" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.727195" 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-07-28T01:54:38.726850" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.727788" 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-07-28T01:54:38.727402" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.728318" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.727985" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.728866" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.728541" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.729401" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.729075" 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-07-28T01:54:38.722242" elapsed="0.007286"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.730090" 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-07-28T01:54:38.729686" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.730535" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.730273" 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-07-28T01:54:38.738783" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.738439" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.744410" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.744681" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.744797" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.738943" elapsed="0.005884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.745264" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.744998" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.747720" 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-07-28T01:54:38.745511" elapsed="0.002288"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.750491" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.747919" elapsed="0.002645"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.747884" elapsed="0.002720"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.755350" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.755417" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.750813" elapsed="0.004637"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.758088" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.755624" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.755589" elapsed="0.002617"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.758255" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:38.758564" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.758640" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.738102" elapsed="0.020572"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.761467" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.759549" elapsed="0.001969"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.759448" elapsed="0.002092"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.762110" 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-07-28T01:54:38.761691" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.762734" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.762311" elapsed="0.000450"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.762813" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:38.763008" 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-07-28T01:54:38.758977" elapsed="0.004058"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.763195" 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-07-28T01:54:38.737512" elapsed="0.026185"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.771750" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.771379" elapsed="0.000402"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.784730" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.785854" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.786604" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.771914" elapsed="0.014752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.787716" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.787027" elapsed="0.000796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.792670" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:38.788151" elapsed="0.005484"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.795557" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.793714" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.793692" elapsed="0.001939"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.825507" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.825558" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.795774" elapsed="0.029808"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.827433" elapsed="0.000080"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.825667" elapsed="0.001883"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.825647" elapsed="0.001928"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.827610" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:38.827816" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.827860" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.770974" 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-07-28T01:54:38.830104" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.828479" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.828444" elapsed="0.001732"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.830777" 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-07-28T01:54:38.830328" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.831344" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.830971" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.831420" elapsed="0.000068"/>
</return>
<msg time="2026-07-28T01:54:38.831662" 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-07-28T01:54:38.828110" elapsed="0.003578"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.831847" 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-07-28T01:54:38.770317" elapsed="0.062006"/>
</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-07-28T01:54:38.718879" elapsed="0.113502"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.711894" elapsed="0.120642"/>
</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-07-28T01:54:38.843716" 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-07-28T01:54:38.843906" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.843568" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.844569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.844092" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.845054" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.844755" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.845546" 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-07-28T01:54:38.845236" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.846028" 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-07-28T01:54:38.845728" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.846981" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.846211" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.847565" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.847175" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.848168" 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-07-28T01:54:38.847821" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.848738" 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-07-28T01:54:38.848381" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.849285" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.848954" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.849863" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.849505" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.850410" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.850077" 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-07-28T01:54:38.843176" elapsed="0.007359"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.851102" 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-07-28T01:54:38.850692" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.851598" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.851301" 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-07-28T01:54:38.859737" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.859367" elapsed="0.000396"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.865359" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.865630" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.865744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.859907" elapsed="0.005863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.866201" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.865932" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.868682" 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-07-28T01:54:38.866434" elapsed="0.002309"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.870606" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.868815" elapsed="0.001841"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.868795" elapsed="0.001883"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.875052" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.875119" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:38.870817" elapsed="0.004335"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.877762" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.875258" elapsed="0.002588"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.875232" elapsed="0.002648"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.877928" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:38.878227" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:38.878291" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.859043" elapsed="0.019292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.881718" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.879153" elapsed="0.002635"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.879127" elapsed="0.002691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.882650" 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-07-28T01:54:38.882028" elapsed="0.000660"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.883516" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.882938" elapsed="0.000617"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.883637" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:38.883910" 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-07-28T01:54:38.878662" elapsed="0.005273"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:38.884104" 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-07-28T01:54:38.858468" elapsed="0.026123"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.892573" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.892255" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.904833" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.905906" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:38.906582" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.892729" elapsed="0.013914"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.907643" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.907001" elapsed="0.000747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.913312" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:38.908068" elapsed="0.007298"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.917508" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.915611" elapsed="0.001947"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.915564" elapsed="0.002016"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.946121" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:38.946170" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:38.917720" elapsed="0.028473"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:38.948055" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:38.946277" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.946257" elapsed="0.001880"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:38.948171" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.948372" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:38.948416" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:38.891875" elapsed="0.056564"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:38.950624" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.949024" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.949005" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.951268" 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-07-28T01:54:38.950841" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.951848" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:38.951493" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:38.951936" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:38.952118" 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-07-28T01:54:38.948675" 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-07-28T01:54:38.952300" 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-07-28T01:54:38.891211" elapsed="0.061578"/>
</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-07-28T01:54:38.839811" elapsed="0.113035"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.832732" elapsed="0.120237"/>
</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-07-28T01:54:38.964272" 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-07-28T01:54:38.964432" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.964125" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:38.965098" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06936a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:38.964633" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.965598" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:38.965281" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.966079" 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-07-28T01:54:38.965791" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:38.966558" 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-07-28T01:54:38.966257" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:38.967579" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.966738" elapsed="0.000874"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.968119" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.967772" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.968745" 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-07-28T01:54:38.968373" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.969295" 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-07-28T01:54:38.968950" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.969847" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:38.969519" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.970386" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:38.970054" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.971123" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06936a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:38.970604" elapsed="0.000564"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:38.963777" elapsed="0.007448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.972738" 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-07-28T01:54:38.971649" elapsed="0.001199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.973768" level="INFO">&lt;?xml version="1.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-07-28T01:54:38.973214" elapsed="0.000733"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.987113" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:38.986735" elapsed="0.000408"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:38.993901" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:38.994250" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:38.994402" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:38.987286" elapsed="0.007144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.995040" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:38.994688" elapsed="0.000401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:38.997620" 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-07-28T01:54:38.995239" elapsed="0.002453"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.000574" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:38.997782" elapsed="0.002917"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:38.997754" elapsed="0.002984"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.005906" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.005973" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.000950" elapsed="0.005057"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.008998" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.006115" elapsed="0.002967"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.006088" elapsed="0.003029"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.009163" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:39.009549" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.009617" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:38.986301" elapsed="0.023347"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.012445" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.010621" elapsed="0.001888"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.010594" elapsed="0.001938"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.013197" 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-07-28T01:54:39.012726" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.013787" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.013393" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.013865" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:39.014049" 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-07-28T01:54:39.010066" elapsed="0.004008"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.014278" elapsed="0.000508"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:38.985577" elapsed="0.029287"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.023188" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.022839" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.039124" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.040245" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.040842" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.023365" elapsed="0.017518"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.041838" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.041219" elapsed="0.000688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.045771" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.042166" elapsed="0.005024"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.049888" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.047301" elapsed="0.002731"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.047271" elapsed="0.002796"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.084136" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.084185" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.050272" elapsed="0.033936"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.086098" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.084292" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.084272" elapsed="0.001910"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.086215" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:39.086436" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.086500" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.022440" elapsed="0.064085"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.089027" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.087109" elapsed="0.001964"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.087085" elapsed="0.002010"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.089712" 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-07-28T01:54:39.089263" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.090278" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.089909" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.090414" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:39.090629" 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-07-28T01:54:39.086760" elapsed="0.003895"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.090817" 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-07-28T01:54:39.021765" elapsed="0.069529"/>
</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-07-28T01:54:38.960339" elapsed="0.131052"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:38.953263" elapsed="0.138282"/>
</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-07-28T01:54:39.102832" 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-07-28T01:54:39.103983" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.102681" elapsed="0.001411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.106246" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.104773" elapsed="0.001546"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.107557" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.106750" elapsed="0.000873"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.108780" 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-07-28T01:54:39.108020" elapsed="0.000823"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.110071" 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-07-28T01:54:39.109231" elapsed="0.000906"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.112412" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.110544" elapsed="0.001936"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.113284" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.112734" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.114252" 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-07-28T01:54:39.113755" elapsed="0.000619"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.115508" 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-07-28T01:54:39.114641" elapsed="0.000946"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.116392" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.115815" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.117193" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.116713" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.118035" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.117523" elapsed="0.000575"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.102326" elapsed="0.015875"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.119080" 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-07-28T01:54:39.118437" elapsed="0.000744"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.119852" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.119436" elapsed="0.000521"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.129521" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.129156" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.136174" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.136513" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.136632" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.129690" elapsed="0.006969"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.137135" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.136869" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.139603" 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-07-28T01:54:39.137342" elapsed="0.002326"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.141642" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.139756" elapsed="0.001945"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.139729" elapsed="0.002000"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.145862" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.145929" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.141892" 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-07-28T01:54:39.149013" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.146071" elapsed="0.003031"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.146041" elapsed="0.003103"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.149200" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:39.149587" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.149656" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.128812" elapsed="0.020875"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.152625" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.150534" elapsed="0.002150"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.150507" elapsed="0.002199"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.153300" 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-07-28T01:54:39.152870" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.153895" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.153522" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.153977" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:39.154175" 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-07-28T01:54:39.150009" elapsed="0.004191"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.154411" elapsed="0.000453"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.128139" elapsed="0.026803"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.163325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.162964" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.177099" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.178368" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.179223" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.163509" elapsed="0.015854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.180210" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.179813" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.184062" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.180518" elapsed="0.005019"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.188343" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.185662" elapsed="0.002764"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.185628" elapsed="0.002850"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.220285" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.220335" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.188687" elapsed="0.031671"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.222314" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.220445" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.220425" elapsed="0.001974"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.222432" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:39.222674" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.222721" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.162521" elapsed="0.060222"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.225103" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.223382" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.223363" elapsed="0.001807"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.225801" 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-07-28T01:54:39.225324" elapsed="0.000511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.226383" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.226004" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.226476" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:39.226669" 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-07-28T01:54:39.222976" 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-07-28T01:54:39.226861" elapsed="0.000491"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.161834" elapsed="0.065585"/>
</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-07-28T01:54:39.099010" elapsed="0.128489"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.091904" elapsed="0.135748"/>
</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-07-28T01:54:39.240014" 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-07-28T01:54:39.240178" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.239846" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.240885" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.240386" elapsed="0.000529"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.241432" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.241117" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.241934" 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-07-28T01:54:39.241633" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.242419" 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-07-28T01:54:39.242125" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.243529" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.242622" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.244133" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.243727" elapsed="0.000454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.244774" 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-07-28T01:54:39.244400" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.245515" 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-07-28T01:54:39.244988" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.246124" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.245734" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.246712" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.246349" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.247328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.246932" elapsed="0.000446"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.239487" elapsed="0.007948"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.248081" 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-07-28T01:54:39.247659" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.248558" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.248278" elapsed="0.000348"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.256771" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.256415" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.262885" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.263162" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.263308" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.256933" elapsed="0.006402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.263841" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.263568" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.266292" 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-07-28T01:54:39.264051" elapsed="0.002320"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.268769" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.266465" elapsed="0.002422"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.266430" elapsed="0.002492"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.274309" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.274378" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.269168" elapsed="0.005242"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.277685" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.274540" elapsed="0.003228"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.274512" elapsed="0.003289"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.277857" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:39.278154" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.278217" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.256081" elapsed="0.022170"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.281613" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.279100" elapsed="0.002579"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.279075" elapsed="0.002634"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.282569" 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-07-28T01:54:39.281944" elapsed="0.000663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.283426" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.282860" elapsed="0.000632"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.283567" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:39.283898" 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-07-28T01:54:39.278604" elapsed="0.005354"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.284363" elapsed="0.001238"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.255424" elapsed="0.030347"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.295233" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.294886" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.308586" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.309840" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.310669" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.295420" elapsed="0.015325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.311949" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.311144" elapsed="0.000937"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.317308" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.312440" elapsed="0.006311"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.321521" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.318865" elapsed="0.002791"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.318833" elapsed="0.002861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.353678" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.353736" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.321914" elapsed="0.031849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.355717" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.353848" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.353828" elapsed="0.001976"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.355845" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:39.356109" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.356164" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.294480" elapsed="0.061709"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.358450" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.356796" elapsed="0.001725"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.356777" elapsed="0.001766"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.359211" 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-07-28T01:54:39.358707" elapsed="0.000533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.359822" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.359419" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.359899" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:39.360100" 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-07-28T01:54:39.356418" elapsed="0.003709"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.360289" elapsed="0.000436"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.293804" elapsed="0.066985"/>
</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-07-28T01:54:39.235932" elapsed="0.124916"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.228098" elapsed="0.132892"/>
</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-07-28T01:54:39.374243" 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-07-28T01:54:39.374445" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.374058" elapsed="0.000435"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.375163" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.374648" elapsed="0.000562"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.375749" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.375441" elapsed="0.000375"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.376318" 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-07-28T01:54:39.376008" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.376907" 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-07-28T01:54:39.376554" elapsed="0.000381"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.377944" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.377087" elapsed="0.000888"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.378607" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.378137" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.379316" 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-07-28T01:54:39.378892" elapsed="0.000469"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.379956" 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-07-28T01:54:39.379578" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.380595" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.380221" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.381171" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.380833" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.382024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.381413" elapsed="0.000659"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.373646" elapsed="0.008484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.382774" 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-07-28T01:54:39.382324" elapsed="0.000519"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.383365" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.383030" elapsed="0.000453"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.392506" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.392105" elapsed="0.000432"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.398941" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.399239" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.399391" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.392672" elapsed="0.006800"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.399985" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.399641" elapsed="0.000392"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.402645" 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-07-28T01:54:39.400215" elapsed="0.002526"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.405402" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.402827" elapsed="0.002711"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.402801" elapsed="0.002776"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.411230" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.411301" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.405827" elapsed="0.005505"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.414382" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.411505" elapsed="0.002980"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.411412" elapsed="0.003109"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.414609" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:39.414982" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.415050" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.391706" elapsed="0.023415"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.418157" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.416156" elapsed="0.002047"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.416137" elapsed="0.002088"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.418919" 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-07-28T01:54:39.418415" elapsed="0.000531"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.419604" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.419176" elapsed="0.000454"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.419681" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:39.419903" 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-07-28T01:54:39.415579" elapsed="0.004351"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.420090" elapsed="0.000453"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.391028" elapsed="0.029617"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.429359" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.429007" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.442137" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.443381" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.444144" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.429566" elapsed="0.014645"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.445288" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.444653" elapsed="0.000747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.450006" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.445789" elapsed="0.005561"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.453938" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.451472" elapsed="0.002538"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.451428" elapsed="0.002614"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.484001" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.484055" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.454244" elapsed="0.029836"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.486022" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.484177" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.484153" elapsed="0.001955"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.486144" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:39.486371" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.486416" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.428568" elapsed="0.057871"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.488745" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.487066" elapsed="0.001727"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.487048" elapsed="0.001767"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.489431" 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-07-28T01:54:39.488974" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.490019" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.489654" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.490096" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:39.490293" 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-07-28T01:54:39.486699" elapsed="0.003619"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.490496" 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-07-28T01:54:39.427775" elapsed="0.063211"/>
</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-07-28T01:54:39.369806" elapsed="0.121240"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.361519" elapsed="0.129696"/>
</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-07-28T01:54:39.503261" 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-07-28T01:54:39.503435" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.503066" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.504151" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.503661" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.504662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.504347" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.505129" 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-07-28T01:54:39.504853" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.505613" 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-07-28T01:54:39.505320" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.506651" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.505806" elapsed="0.000877"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.507236" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.506850" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.507926" 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-07-28T01:54:39.507564" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.508490" 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-07-28T01:54:39.508129" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.509018" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.508701" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.509569" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.509230" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.510300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.509781" elapsed="0.000564"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.502718" elapsed="0.007686"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.510997" 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-07-28T01:54:39.510575" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.511482" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.511214" 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-07-28T01:54:39.519538" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.519189" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.525422" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.525744" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.525863" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.519746" elapsed="0.006142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.526353" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.526084" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.529134" 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-07-28T01:54:39.526557" elapsed="0.002665"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.531860" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.529332" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.529298" elapsed="0.002671"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.536553" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.536619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.532168" elapsed="0.004484"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.539390" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.536756" elapsed="0.002732"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.536730" elapsed="0.002792"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.539567" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:39.539845" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.539891" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.518828" elapsed="0.021086"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.542078" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.540471" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.540439" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.542717" 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-07-28T01:54:39.542296" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.543279" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.542906" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.543354" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:39.543553" 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-07-28T01:54:39.540124" elapsed="0.003454"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.543735" 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-07-28T01:54:39.518231" 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-07-28T01:54:39.552058" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.551755" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.564811" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.565507" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.565910" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.552213" elapsed="0.013735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.566557" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.566171" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.570133" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.566826" elapsed="0.004602"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.574040" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.571550" elapsed="0.002558"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.571522" elapsed="0.002618"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.609586" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.609638" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.574342" elapsed="0.035320"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.611558" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.609757" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.609733" elapsed="0.001912"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.611679" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:39.611889" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.611933" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.551358" elapsed="0.060597"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.614145" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.612551" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.612532" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.614833" 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-07-28T01:54:39.614366" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.615404" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.615024" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.615497" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:39.615678" 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-07-28T01:54:39.612186" 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-07-28T01:54:39.615861" 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-07-28T01:54:39.550706" elapsed="0.065621"/>
</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-07-28T01:54:39.499313" elapsed="0.117071"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.491752" elapsed="0.124778"/>
</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-07-28T01:54:39.636273" 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-07-28T01:54:39.636548" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:39.636044" elapsed="0.000536"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.637439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032aca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.636785" elapsed="0.000710"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.638047" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.637704" elapsed="0.000370"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.638605" 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-07-28T01:54:39.638253" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.639175" 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-07-28T01:54:39.638829" elapsed="0.000374"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.640246" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:39.639361" elapsed="0.000917"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.640934" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.640526" elapsed="0.000454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.641619" 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-07-28T01:54:39.641270" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.642225" 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-07-28T01:54:39.641857" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.642794" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:39.642422" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.643499" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:39.643031" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.644384" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032aca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.643715" elapsed="0.000714"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.635611" elapsed="0.008901"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.645176" 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-07-28T01:54:39.644709" elapsed="0.000499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.645675" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:39.645363" elapsed="0.000376"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.654083" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.653712" elapsed="0.000398"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.660440" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.660792" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.660949" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.654244" elapsed="0.006732"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.661499" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.661162" elapsed="0.000384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.664365" 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-07-28T01:54:39.661727" elapsed="0.002841"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.667319" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.664697" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.664659" elapsed="0.002776"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.671974" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.672021" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.667678" elapsed="0.004366"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.673925" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.672126" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.672103" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.674054" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:39.674279" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.674328" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.653302" elapsed="0.021055"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.676837" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.674987" elapsed="0.001896"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.674969" elapsed="0.001936"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.677524" 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-07-28T01:54:39.677072" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.678101" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.677730" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.678187" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:39.678375" 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-07-28T01:54:39.674635" elapsed="0.003766"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.678581" 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-07-28T01:54:39.652667" elapsed="0.026437"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.687237" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.686871" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.701421" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.702698" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.703639" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.687405" elapsed="0.016307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.704874" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.704143" elapsed="0.000849"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.711304" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.705367" elapsed="0.007243"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.714524" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.712703" elapsed="0.001883"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.712679" elapsed="0.001932"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.754890" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.754940" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.714763" elapsed="0.040201"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.757017" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.755090" elapsed="0.001988"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.755063" elapsed="0.002040"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.757138" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:39.757359" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.757408" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.686483" elapsed="0.070948"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.759805" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.758061" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.758043" elapsed="0.001830"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.760499" 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-07-28T01:54:39.760028" elapsed="0.000501"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.761070" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.760696" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.761146" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:39.761338" 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-07-28T01:54:39.757699" elapsed="0.003666"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.761549" 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-07-28T01:54:39.685804" elapsed="0.076247"/>
</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-07-28T01:54:39.631500" elapsed="0.130612"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.616994" elapsed="0.145325"/>
</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-07-28T01:54:39.773816" 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-07-28T01:54:39.773987" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.773665" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.774644" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2bb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.774182" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.775153" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.774837" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.775637" 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-07-28T01:54:39.775344" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.776119" 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-07-28T01:54:39.775832" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.777059" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.776302" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.777637" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.777265" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.778243" 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-07-28T01:54:39.777892" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.778887" 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-07-28T01:54:39.778520" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.779479" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.779127" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.780017" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.779684" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.780574" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2bb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.780219" 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-07-28T01:54:39.773295" elapsed="0.007379"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.781231" 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-07-28T01:54:39.780826" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.781695" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.781415" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.792051" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.791725" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.797745" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.798016" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.798147" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.792212" elapsed="0.005962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.798627" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.798336" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.801089" 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-07-28T01:54:39.798816" elapsed="0.002337"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.803095" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.801227" elapsed="0.001920"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.801207" elapsed="0.001963"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.807907" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.807974" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.803323" elapsed="0.004683"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.810586" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.808113" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.808085" elapsed="0.002614"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.810746" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:54:39.811064" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.811126" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.791375" elapsed="0.019783"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.814318" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.811977" elapsed="0.002436"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.811952" elapsed="0.002543"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.815393" 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-07-28T01:54:39.814736" elapsed="0.000694"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.816120" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.815698" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.816195" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:39.816389" 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-07-28T01:54:39.811492" elapsed="0.004922"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.816588" 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-07-28T01:54:39.790758" elapsed="0.026302"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.825378" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.825066" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.838509" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.839650" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.840504" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.825554" elapsed="0.015020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.841634" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.840964" elapsed="0.000785"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.848510" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.842097" elapsed="0.008188"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.854006" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.850439" elapsed="0.003665"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.850396" elapsed="0.003751"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.883965" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.884047" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.854421" elapsed="0.029661"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.887153" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.884230" elapsed="0.003016"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.884196" elapsed="0.003089"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.887339" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:54:39.887712" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:39.887779" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.824687" elapsed="0.063126"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.891515" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.888798" elapsed="0.002788"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.888767" elapsed="0.002855"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.892695" 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-07-28T01:54:39.891967" elapsed="0.000776"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.893639" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.893024" elapsed="0.000654"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.893751" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:39.894027" 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-07-28T01:54:39.888218" elapsed="0.005845"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.894305" elapsed="0.000676"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.824016" elapsed="0.071066"/>
</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-07-28T01:54:39.769882" elapsed="0.125300"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.762693" elapsed="0.132682"/>
</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-07-28T01:54:39.907219" 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-07-28T01:54:39.907413" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.907058" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:39.908100" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:39.907633" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.908614" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:39.908296" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.909098" 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-07-28T01:54:39.908806" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:39.909589" 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-07-28T01:54:39.909280" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.910551" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.909783" elapsed="0.000806"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.911123" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.910755" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.911775" 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-07-28T01:54:39.911391" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.912344" 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-07-28T01:54:39.911994" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.912900" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:39.912563" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.913477" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:39.913116" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.914044" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:39.913688" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:39.906652" elapsed="0.007494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.914743" 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-07-28T01:54:39.914311" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.915219" level="INFO">&lt;?xml version="1.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-07-28T01:54:39.914951" elapsed="0.000333"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.923490" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.923146" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.929921" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.930281" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:39.930440" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.923653" elapsed="0.006847"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.931148" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.930730" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.934439" 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-07-28T01:54:39.931418" elapsed="0.003131"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.937239" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.934654" elapsed="0.002660"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.934624" elapsed="0.002723"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:39.942157" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:39.942222" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:39.937694" elapsed="0.004561"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:39.944816" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:39.942363" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.942335" elapsed="0.002594"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:39.944977" elapsed="0.000052"/>
</return>
<msg time="2026-07-28T01:54:39.945294" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:39.945357" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:39.922801" elapsed="0.022587"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.950293" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.946190" elapsed="0.004152"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.946165" elapsed="0.004199"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.950988" 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-07-28T01:54:39.950543" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.951616" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:39.951203" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:39.951696" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:39.951883" 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-07-28T01:54:39.945720" elapsed="0.006189"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:39.952067" 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-07-28T01:54:39.922201" elapsed="0.030351"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.960363" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:39.960054" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:39.973081" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:39.973828" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:39.974278" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:39.960543" elapsed="0.013775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.975031" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:39.974601" elapsed="0.000504"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:39.978836" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:39.975312" elapsed="0.004877"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:39.982858" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:39.980301" elapsed="0.002659"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:39.980271" elapsed="0.002723"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.068354" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.068421" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:39.983212" elapsed="0.085233"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.070569" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.068611" elapsed="0.002031"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.068576" elapsed="0.002093"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.070710" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:40.070986" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.071032" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:39.959646" elapsed="0.111408"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.073354" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.071729" elapsed="0.001670"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.071709" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.074098" 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-07-28T01:54:40.073608" elapsed="0.000518"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.074698" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.074306" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.074776" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:40.074995" 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-07-28T01:54:40.071324" elapsed="0.003699"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.075186" elapsed="0.000449"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:39.958993" elapsed="0.116710"/>
</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-07-28T01:54:39.903039" elapsed="0.172727"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:39.895852" elapsed="0.180051"/>
</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-07-28T01:54:40.087364" 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-07-28T01:54:40.087562" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.087213" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.088210" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842e30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.087747" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.088714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.088398" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.089176" 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-07-28T01:54:40.088899" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.089661" 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-07-28T01:54:40.089364" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.090628" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.089850" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.091218" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.090863" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.092038" 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-07-28T01:54:40.091507" elapsed="0.000587"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.092629" 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-07-28T01:54:40.092264" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.093170" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.092840" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.093760" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.093398" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.094309" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842e30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.093972" 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-07-28T01:54:40.086858" elapsed="0.007552"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.095016" 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-07-28T01:54:40.094590" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.095496" level="INFO">&lt;?xml version="1.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-07-28T01:54:40.095216" 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-07-28T01:54:40.103552" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.103206" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.109709" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.110001" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.110120" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.103712" elapsed="0.006438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.110607" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.110316" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.113779" 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-07-28T01:54:40.110803" elapsed="0.003066"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.117785" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.114018" elapsed="0.003850"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.113988" elapsed="0.003916"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.122759" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.122820" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.118157" elapsed="0.004688"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.124810" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.122961" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.122941" elapsed="0.001950"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.124925" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:40.125173" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.125218" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.102867" elapsed="0.022373"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.127786" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.125887" elapsed="0.001948"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.125869" elapsed="0.001988"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.128486" 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-07-28T01:54:40.128006" elapsed="0.000508"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.129072" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.128715" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.129187" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:40.129370" 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-07-28T01:54:40.125513" elapsed="0.003881"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.129571" 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-07-28T01:54:40.102216" elapsed="0.027857"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.138284" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.137940" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.155842" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.157171" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.158058" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.138442" elapsed="0.019681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.159258" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.158579" elapsed="0.000850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.163489" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.159802" elapsed="0.005072"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.167750" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.164978" elapsed="0.002890"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.164952" elapsed="0.002951"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.196198" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.196281" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.168102" elapsed="0.028205"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.198281" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.196390" elapsed="0.001951"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.196370" elapsed="0.001996"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.198400" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:40.198619" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.198663" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.137564" elapsed="0.061159"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.201094" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.199360" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.199341" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.201825" 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-07-28T01:54:40.201348" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.202446" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.202052" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.202539" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:40.202759" 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-07-28T01:54:40.198978" elapsed="0.003820"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.202959" elapsed="0.000436"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:40.136899" elapsed="0.066609"/>
</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-07-28T01:54:40.083394" elapsed="0.120178"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.076246" elapsed="0.127457"/>
</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-07-28T01:54:40.215695" 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-07-28T01:54:40.215878" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.215536" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.216531" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6c50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.216075" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.217013" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.216714" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.217482" 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-07-28T01:54:40.217192" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.217948" 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-07-28T01:54:40.217661" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.218897" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.218127" elapsed="0.000802"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.219441" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.219088" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.220047" 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-07-28T01:54:40.219705" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.220594" 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-07-28T01:54:40.220246" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.221113" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.220791" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.221682" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.221319" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.222216" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6c50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.221888" 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-07-28T01:54:40.215153" elapsed="0.007175"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.222941" 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-07-28T01:54:40.222501" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.223383" level="INFO">&lt;?xml version="1.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-07-28T01:54:40.223125" 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-07-28T01:54:40.233201" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.232741" elapsed="0.000499"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.239830" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.240076" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.240187" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.233429" elapsed="0.006790"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.240677" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.240388" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.243111" 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-07-28T01:54:40.240884" elapsed="0.002289"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.245625" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.243247" elapsed="0.002449"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.243227" elapsed="0.002502"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.250442" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.250531" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.245942" elapsed="0.004623"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.253346" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.250672" elapsed="0.002753"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.250645" elapsed="0.002844"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.253541" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:40.253852" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.253908" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.232251" elapsed="0.021682"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.256354" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.254526" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.254507" elapsed="0.001918"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.257034" 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-07-28T01:54:40.256595" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.257615" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.257224" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.257692" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:40.257888" 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-07-28T01:54:40.254161" elapsed="0.003754"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.258075" 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-07-28T01:54:40.231410" elapsed="0.027160"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.266703" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.266375" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.279365" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.280054" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.280517" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.266894" elapsed="0.013663"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.281183" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.280804" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.284928" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.281471" elapsed="0.004780"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.288946" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.286355" elapsed="0.002660"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.286328" elapsed="0.002720"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.316472" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.316524" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.289260" elapsed="0.027287"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.318398" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.316633" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.316613" elapsed="0.001898"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.318547" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:40.318841" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.318889" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.265985" elapsed="0.052926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.321319" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.319602" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.319584" elapsed="0.001803"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.322050" 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-07-28T01:54:40.321552" elapsed="0.000526"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.322652" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.322241" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.322770" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:40.322996" 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-07-28T01:54:40.319186" elapsed="0.003834"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.323179" 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-07-28T01:54:40.265320" elapsed="0.058409"/>
</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-07-28T01:54:40.211708" elapsed="0.112084"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.204179" elapsed="0.119736"/>
</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-07-28T01:54:40.337133" 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-07-28T01:54:40.337290" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.336954" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.338014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.337486" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.338534" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.338194" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.339076" 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-07-28T01:54:40.338766" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.339578" 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-07-28T01:54:40.339255" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.340634" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:40.339755" elapsed="0.000910"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.341190" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.340856" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.341864" 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-07-28T01:54:40.341492" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.342429" 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-07-28T01:54:40.342062" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.343031" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.342644" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.343641" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:40.343269" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.344414" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.343840" elapsed="0.000639"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:40.336616" elapsed="0.007924"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.345163" 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-07-28T01:54:40.344695" elapsed="0.000501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.345650" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.345350" 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-07-28T01:54:40.361228" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.360687" elapsed="0.000580"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.368832" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.369129" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.369277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.361523" elapsed="0.007783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.369835" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.369527" elapsed="0.000356"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.372319" 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-07-28T01:54:40.370031" elapsed="0.002393"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.374400" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.372515" elapsed="0.002011"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.372495" elapsed="0.002060"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.379109" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.379175" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.374733" elapsed="0.004475"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.382203" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.379315" elapsed="0.002971"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.379288" elapsed="0.003031"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.382366" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:40.382751" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.382819" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.360162" elapsed="0.022732"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.386238" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.383785" elapsed="0.002517"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.383759" elapsed="0.002573"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.387368" 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-07-28T01:54:40.386606" elapsed="0.000802"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.388133" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.387660" elapsed="0.000499"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.388209" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:54:40.388431" 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-07-28T01:54:40.383198" elapsed="0.005272"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.388632" 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-07-28T01:54:40.359185" elapsed="0.029983"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.397557" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.397240" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.409369" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.410623" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.411429" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.397714" elapsed="0.013808"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.412701" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.411953" elapsed="0.000865"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.417319" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.413204" elapsed="0.005096"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.420147" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.418374" elapsed="0.001821"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.418354" elapsed="0.001864"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.445288" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.445337" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.420359" elapsed="0.025002"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.447211" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.445444" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.445424" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.447327" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:40.447545" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.447590" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.396825" elapsed="0.050787"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.449802" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.448167" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.448149" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.450428" 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-07-28T01:54:40.450019" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.451017" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.450636" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.451093" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:40.451271" 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-07-28T01:54:40.447832" 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-07-28T01:54:40.451470" 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-07-28T01:54:40.396151" elapsed="0.055772"/>
</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-07-28T01:54:40.331739" elapsed="0.120242"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.324244" elapsed="0.127859"/>
</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-07-28T01:54:40.463102" 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-07-28T01:54:40.463260" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.462963" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.463905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.463443" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.464372" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.464088" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.464841" 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-07-28T01:54:40.464570" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.465288" 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-07-28T01:54:40.465019" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.466235" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:40.465479" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.466802" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.466424" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.467377" 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-07-28T01:54:40.467048" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.468075" 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-07-28T01:54:40.467588" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.468611" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.468275" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.469135" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:40.468811" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.469673" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.469333" 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-07-28T01:54:40.462593" elapsed="0.007179"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.470316" 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-07-28T01:54:40.469928" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.470775" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.470515" 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-07-28T01:54:40.479478" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.479090" elapsed="0.000418"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.486432" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.486808" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.486930" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.479647" elapsed="0.007309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.487580" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.487237" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.490118" 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-07-28T01:54:40.487778" elapsed="0.002404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.492529" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.490267" elapsed="0.002338"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.490242" elapsed="0.002395"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.497716" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.497829" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.492894" elapsed="0.004968"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.500940" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.497969" elapsed="0.003096"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.497942" elapsed="0.003160"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.501149" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:54:40.501506" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.501569" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.478721" elapsed="0.022879"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.504735" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.502565" elapsed="0.002217"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.502539" elapsed="0.002265"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.505421" 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-07-28T01:54:40.504958" elapsed="0.000539"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.506058" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.505663" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.506135" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:40.506358" 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-07-28T01:54:40.501975" elapsed="0.004408"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.506602" elapsed="0.000482"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:40.478022" elapsed="0.029127"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.515668" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.515303" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.529050" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.530548" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.531698" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.515867" elapsed="0.015975"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.533401" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.532441" elapsed="0.001132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.538808" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.534016" elapsed="0.006261"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.543233" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.540412" elapsed="0.002903"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.540373" elapsed="0.002985"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.572493" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.572544" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.543647" elapsed="0.028920"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.574699" elapsed="0.000063"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.572655" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.572634" elapsed="0.002191"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.574860" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:40.575100" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.575184" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.514884" elapsed="0.060325"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.577906" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.575936" elapsed="0.002016"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.575917" elapsed="0.002057"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.579040" 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-07-28T01:54:40.578175" elapsed="0.000938"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.580735" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.579608" elapsed="0.001193"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.580918" elapsed="0.000096"/>
</return>
<msg time="2026-07-28T01:54:40.581373" 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-07-28T01:54:40.575510" elapsed="0.005921"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.581849" elapsed="0.001060"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:40.514130" elapsed="0.068926"/>
</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-07-28T01:54:40.459299" elapsed="0.123886"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.452379" elapsed="0.131129"/>
</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-07-28T01:54:40.601390" 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-07-28T01:54:40.601596" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.601240" elapsed="0.000386"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.602226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a15d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.601782" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.602739" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.602411" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.603195" 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-07-28T01:54:40.602919" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.603669" 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-07-28T01:54:40.603376" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.604602" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.603848" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.605130" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.604793" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.605722" 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-07-28T01:54:40.605375" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.606251" 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-07-28T01:54:40.605921" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.606986" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.606448" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.607541" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.607193" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.608073" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a15d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.607746" 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-07-28T01:54:40.600895" elapsed="0.007275"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.608792" 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-07-28T01:54:40.608321" elapsed="0.000504"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.609242" level="INFO">&lt;?xml version="1.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-07-28T01:54:40.608980" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.617112" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.616801" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.624225" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.624525" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.624641" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.617270" elapsed="0.007396"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.625089" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.624832" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.627470" 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-07-28T01:54:40.625315" elapsed="0.002219"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.629382" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.627609" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.627588" elapsed="0.001884"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.633636" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.633701" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.629618" elapsed="0.004115"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.636292" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.633842" elapsed="0.002529"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.633815" elapsed="0.002589"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.636449" elapsed="0.000063"/>
</return>
<msg time="2026-07-28T01:54:40.636749" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.636811" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.616481" elapsed="0.020362"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.640151" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.637629" elapsed="0.002587"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.637603" elapsed="0.002643"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.641092" 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-07-28T01:54:40.640484" elapsed="0.000646"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.641890" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.641361" elapsed="0.000567"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.641997" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:40.642251" 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-07-28T01:54:40.637140" elapsed="0.005146"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.642530" 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-07-28T01:54:40.615902" elapsed="0.027310"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.652064" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.651717" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.661824" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.662326" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.662737" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.652221" elapsed="0.010548"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.664021" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.663202" elapsed="0.000947"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.671026" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.664715" elapsed="0.007383"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.674240" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.672192" elapsed="0.002099"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.672169" elapsed="0.002146"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.700746" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.700795" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.674478" elapsed="0.026340"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.702977" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.700902" elapsed="0.002134"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.700881" elapsed="0.002179"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.703094" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:40.703301" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.703345" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.651279" elapsed="0.052089"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.705725" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.703999" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.703980" elapsed="0.001811"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.706448" 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-07-28T01:54:40.705952" elapsed="0.000541"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.707097" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.706688" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.707172" elapsed="0.000086"/>
</return>
<msg time="2026-07-28T01:54:40.707427" 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-07-28T01:54:40.703653" elapsed="0.003813"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.707688" 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-07-28T01:54:40.650569" elapsed="0.057626"/>
</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-07-28T01:54:40.597400" elapsed="0.110856"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.584129" elapsed="0.124252"/>
</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-07-28T01:54:40.720920" 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-07-28T01:54:40.721097" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.720727" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.721796" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ab60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.721291" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.722307" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.722017" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.722851" 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-07-28T01:54:40.722551" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.723343" 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-07-28T01:54:40.723029" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.724278" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.723539" elapsed="0.000771"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.724871" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.724524" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.725524" 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-07-28T01:54:40.725179" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.726134" 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-07-28T01:54:40.725762" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.726740" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:40.726334" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.727259" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:40.726939" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.727834" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ab60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.727468" 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-07-28T01:54:40.720367" elapsed="0.007565"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.728538" 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-07-28T01:54:40.728084" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.729008" level="INFO">&lt;?xml version="1.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-07-28T01:54:40.728723" 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-07-28T01:54:40.737528" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.737147" elapsed="0.000408"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.744801" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.745418" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.745869" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.737686" elapsed="0.008262"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.747166" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.746402" elapsed="0.000877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.753763" 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-07-28T01:54:40.747714" elapsed="0.006257"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.756532" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.754215" elapsed="0.002370"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.754163" elapsed="0.002446"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.759898" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.759945" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.756755" elapsed="0.003213"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.761849" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.760043" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.760024" elapsed="0.001906"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.761963" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:40.762207" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.762250" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.736824" elapsed="0.025449"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.764767" elapsed="0.000064"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.762899" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.762881" elapsed="0.002017"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.765517" 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-07-28T01:54:40.765051" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.766109" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.765707" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.766185" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:40.766405" 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-07-28T01:54:40.762557" elapsed="0.003874"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.766676" 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-07-28T01:54:40.736142" elapsed="0.031032"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.775772" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.775295" elapsed="0.000518"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.789946" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.791359" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.792265" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.776015" elapsed="0.016322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.793598" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.792858" elapsed="0.000854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.798355" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.794248" elapsed="0.005573"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.802523" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.799936" elapsed="0.002670"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.799906" elapsed="0.002733"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.833231" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.833289" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.802851" elapsed="0.030463"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.835295" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.833418" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.833392" elapsed="0.001992"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.835422" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:54:40.835676" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.835721" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.774732" elapsed="0.061012"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.838033" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.836395" elapsed="0.001683"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.836376" elapsed="0.001724"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.838784" 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-07-28T01:54:40.838267" elapsed="0.000545"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.839350" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.838979" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.839427" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:40.839640" 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-07-28T01:54:40.836016" elapsed="0.003650"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.839829" 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-07-28T01:54:40.774010" elapsed="0.066313"/>
</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-07-28T01:54:40.716679" elapsed="0.123703"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.708743" elapsed="0.131792"/>
</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-07-28T01:54:40.851913" 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-07-28T01:54:40.852090" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:40.851764" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.852713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.852275" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.853205" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.852901" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.853690" 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-07-28T01:54:40.853392" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.854155" 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-07-28T01:54:40.853882" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.854979" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.854343" elapsed="0.000667"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.855537" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.855171" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.856134" 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-07-28T01:54:40.855790" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.856708" 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-07-28T01:54:40.856344" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.857243" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:40.856910" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.857796" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:40.857443" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.858335" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.857997" 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-07-28T01:54:40.851397" elapsed="0.007036"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.859034" 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-07-28T01:54:40.858629" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.859482" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.859220" 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-07-28T01:54:40.867664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.867330" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.873718" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.873977" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.874089" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.867840" elapsed="0.006274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.874611" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.874289" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.877822" 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-07-28T01:54:40.874816" elapsed="0.003087"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.880639" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.878069" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.878038" elapsed="0.002705"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.884861" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.884928" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.880940" elapsed="0.004021"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.887380" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.885076" elapsed="0.002363"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.885043" elapsed="0.002435"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.887513" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:40.887723" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:40.887769" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.866994" elapsed="0.020798"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.890133" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.888350" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.888332" elapsed="0.001869"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.890830" 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-07-28T01:54:40.890350" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.891392" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.891023" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.891487" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:40.891669" 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-07-28T01:54:40.888006" elapsed="0.003696"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.891864" 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-07-28T01:54:40.866345" elapsed="0.025992"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.900559" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.900221" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.908818" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.909488" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:40.909909" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.900730" elapsed="0.009219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.910616" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.910184" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.914198" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:40.910923" elapsed="0.004671"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.918167" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.915699" elapsed="0.002537"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.915672" elapsed="0.002597"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.946103" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.946152" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:40.918541" elapsed="0.027642"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:40.948089" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.946273" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.946253" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:40.948211" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:40.948435" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:40.948499" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:40.899831" elapsed="0.048692"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.950828" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.949150" elapsed="0.001730"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.949131" elapsed="0.001776"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.951550" 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-07-28T01:54:40.951065" elapsed="0.000513"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.952130" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:40.951756" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:40.952207" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:40.952398" 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-07-28T01:54:40.948785" elapsed="0.003639"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:40.952609" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:40.899177" elapsed="0.053928"/>
</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-07-28T01:54:40.847984" elapsed="0.105187"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.840884" elapsed="0.112422"/>
</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-07-28T01:54:40.964980" 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-07-28T01:54:40.965166" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.964808" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:40.965822" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06988b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:40.965362" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.966313" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:40.966007" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.966845" 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-07-28T01:54:40.966563" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:40.967309" 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-07-28T01:54:40.967033" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.968201" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.967503" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.968761" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.968400" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.969360" 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-07-28T01:54:40.969020" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.969919" 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-07-28T01:54:40.969575" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.970503" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.970126" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.971049" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.970718" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.971599" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06988b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:40.971250" 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-07-28T01:54:40.964434" elapsed="0.007264"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.972246" 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-07-28T01:54:40.971850" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.972702" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:40.972436" elapsed="0.000357"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.980898" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:40.980567" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:40.987549" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:40.987772" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:40.987923" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:40.981071" elapsed="0.006887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.988600" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:40.988197" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:40.991868" 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-07-28T01:54:40.988883" elapsed="0.003140"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:40.994715" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:40.992127" elapsed="0.002665"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.992099" elapsed="0.002745"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:40.998855" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:40.998902" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:40.995071" elapsed="0.003854"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.000751" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:40.998999" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:40.998981" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.000869" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:41.001074" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.001126" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:40.980228" elapsed="0.020923"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.003420" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.001729" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.001711" elapsed="0.001796"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.004078" 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-07-28T01:54:41.003658" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.004649" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.004270" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.004734" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:41.004921" 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-07-28T01:54:41.001365" elapsed="0.003588"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.005113" 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-07-28T01:54:40.979642" elapsed="0.025959"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.013897" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.013585" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.027734" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.028841" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.029574" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.014064" elapsed="0.015576"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.030738" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.030033" elapsed="0.000820"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.034513" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:41.031110" elapsed="0.004762"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.038579" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.035977" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.035948" elapsed="0.002733"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.066885" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.066933" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.038903" elapsed="0.028054"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.068834" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.067040" elapsed="0.001851"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.067019" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.068949" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:41.069154" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.069199" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.013162" elapsed="0.056060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.071488" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.069830" elapsed="0.001705"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.069811" elapsed="0.001745"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.072143" 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-07-28T01:54:41.071722" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.072738" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.072345" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.072815" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:41.073012" 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-07-28T01:54:41.069474" elapsed="0.003564"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.073199" elapsed="0.000440"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.012519" elapsed="0.061186"/>
</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-07-28T01:54:40.960788" elapsed="0.112975"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:40.953665" elapsed="0.120224"/>
</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-07-28T01:54:41.085180" 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-07-28T01:54:41.085339" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:41.085027" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.085965" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.085540" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.086477" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.086149" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.086947" 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-07-28T01:54:41.086658" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.087398" 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-07-28T01:54:41.087125" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.088190" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:41.087592" elapsed="0.000628"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.088731" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.088378" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.089323" 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-07-28T01:54:41.088982" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.089893" 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-07-28T01:54:41.089542" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.090444" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:41.090092" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.091000" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:41.090675" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.091541" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.091200" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:41.084681" elapsed="0.006972"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.092223" 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-07-28T01:54:41.091806" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.092701" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:41.092423" 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-07-28T01:54:41.100871" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.100549" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.106933" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.107147" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.107262" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.101029" elapsed="0.006261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.107733" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.107472" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.110056" 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-07-28T01:54:41.107939" elapsed="0.002209"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.112061" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.110221" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.110201" elapsed="0.001933"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.115389" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.115475" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.112282" elapsed="0.003228"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.118114" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.115629" elapsed="0.002566"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.115597" elapsed="0.002638"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.118292" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:54:41.118632" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.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, 343 and 1</doc>
<status status="PASS" start="2026-07-28T01:54:41.100198" elapsed="0.018537"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.121896" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.119549" elapsed="0.002416"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.119523" elapsed="0.002475"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.122993" 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-07-28T01:54:41.122242" elapsed="0.000785"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.123581" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.123194" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.123659" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:41.123859" 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-07-28T01:54:41.119039" elapsed="0.004849"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.124047" 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-07-28T01:54:41.099605" elapsed="0.024943"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.132874" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.132550" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.145810" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.146975" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.147715" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.133037" elapsed="0.014740"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.148786" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.148154" elapsed="0.000736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.154890" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:41.149232" elapsed="0.006626"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.157749" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.155937" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.155916" elapsed="0.001906"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.183673" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.183721" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.157965" elapsed="0.025780"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.185603" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.183826" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.183807" elapsed="0.001879"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.185720" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:41.185935" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.185980" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.132137" elapsed="0.053865"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.188234" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.186613" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.186594" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.188904" 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-07-28T01:54:41.188481" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.189488" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.189097" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.189571" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:41.189753" 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-07-28T01:54:41.186226" elapsed="0.003552"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.189947" elapsed="0.000447"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.131467" elapsed="0.059009"/>
</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-07-28T01:54:41.081283" elapsed="0.109256"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.074193" elapsed="0.116477"/>
</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-07-28T01:54:41.202032" 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-07-28T01:54:41.202196" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:41.201879" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.202940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.202405" elapsed="0.000563"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.203435" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.203135" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.203921" 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-07-28T01:54:41.203642" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.204393" 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-07-28T01:54:41.204108" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.205280" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:41.204589" elapsed="0.000723"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.205837" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.205486" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.206439" 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-07-28T01:54:41.206080" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.207001" 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-07-28T01:54:41.206653" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.207555" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:41.207202" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.208081" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:41.207759" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.208641" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.208290" 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-07-28T01:54:41.201538" elapsed="0.007204"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.209290" 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-07-28T01:54:41.208894" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.209753" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:41.209504" 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-07-28T01:54:41.219744" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.219404" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.225791" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.226027" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.226152" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.219913" elapsed="0.006269"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.226664" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.226371" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.229014" 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-07-28T01:54:41.226866" elapsed="0.002244"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.231150" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.229184" elapsed="0.002050"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.229163" elapsed="0.002103"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.235550" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.235615" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.231484" 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-07-28T01:54:41.238382" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.235774" elapsed="0.002713"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.235739" elapsed="0.002783"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.238569" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:41.238876" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.238946" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.219071" elapsed="0.019906"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.241220" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.239576" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.239557" elapsed="0.001730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.241874" 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-07-28T01:54:41.241439" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.242494" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.242075" elapsed="0.000447"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.242575" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:41.242768" 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-07-28T01:54:41.239210" 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-07-28T01:54:41.242961" 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-07-28T01:54:41.218483" elapsed="0.024948"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.251512" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.251183" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.264412" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.265115" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.265561" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.251671" elapsed="0.013929"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.266211" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.265838" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.269977" 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;8&lt;/second&gt;&lt;nanosecond&gt;716000000&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;376000000&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;8&lt;/second&gt;&lt;nanosecond&gt;755000000&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;8&lt;/second&gt;&lt;nanosecond&gt;793000000&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;8&lt;/second&gt;&lt;nanosecond&gt;832000000&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;8&lt;/second&gt;&lt;nanosecond&gt;867000000&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;413000000&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;449000000&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;8&lt;/second&gt;&lt;nanosecond&gt;904000000&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;486000000&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;8&lt;/second&gt;&lt;nanosecond&gt;936000000&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;522000000&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;8&lt;/second&gt;&lt;nanosecond&gt;974000000&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;559000000&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;9000000&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;596000000&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;43000000&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;80000000&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;80000000&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;385000000&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;213000000&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;423000000&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;251000000&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;460000000&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;289000000&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;498000000&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;535000000&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;569000000&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;606000000&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;330000000&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;643000000&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;680000000&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;7&lt;/second&gt;&lt;nanosecond&gt;709000000&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;7&lt;/second&gt;&lt;nanosecond&gt;747000000&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;230000000&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;7&lt;/second&gt;&lt;nanosecond&gt;786000000&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;6&lt;/second&gt;&lt;nanosecond&gt;989000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;822000000&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;7&lt;/second&gt;&lt;nanosecond&gt;856000000&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;7&lt;/second&gt;&lt;nanosecond&gt;889000000&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;7&lt;/second&gt;&lt;nanosecond&gt;929000000&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;25000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;7&lt;/second&gt;&lt;nanosecond&gt;966000000&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;63000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;267000000&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;6000000&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;98000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;289000000&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;45000000&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;132000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;344000000&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;169000000&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;116000000&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;151000000&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;192000000&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;7&lt;/second&gt;&lt;nanosecond&gt;673000000&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;633000000&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-07-28T01:54:41.266548" elapsed="0.004787"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.274012" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.271438" elapsed="0.002645"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.271412" elapsed="0.002703"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.318978" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.319051" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.274351" elapsed="0.044728"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.321479" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.319272" elapsed="0.002274"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.319230" elapsed="0.002347"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.321619" elapsed="0.000084"/>
</return>
<msg time="2026-07-28T01:54:41.321910" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.321955" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.250790" elapsed="0.071188"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.324580" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.322835" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.322814" elapsed="0.001835"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.325388" 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-07-28T01:54:41.324848" elapsed="0.000568"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.326040" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.325634" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.326119" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:41.326373" 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-07-28T01:54:41.322352" elapsed="0.004050"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.326584" elapsed="0.000468"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.250090" elapsed="0.077032"/>
</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-07-28T01:54:41.198095" elapsed="0.129090"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.191012" elapsed="0.136349"/>
</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-07-28T01:54:41.339706" 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-07-28T01:54:41.339959" 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-07-28T01:54:41.339501" elapsed="0.000492"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.340676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.340174" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.341442" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.340957" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.342117" 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-07-28T01:54:41.341758" elapsed="0.000397"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.342705" 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-07-28T01:54:41.342356" elapsed="0.000377"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.343627" 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-07-28T01:54:41.342931" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.344212" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.343823" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.344946" 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-07-28T01:54:41.344572" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.345536" 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-07-28T01:54:41.345147" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.346141" 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-07-28T01:54:41.345780" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.346790" 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-07-28T01:54:41.346406" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.347395" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.347028" elapsed="0.000412"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:41.339054" elapsed="0.008460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.348143" 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-07-28T01:54:41.347668" elapsed="0.000507"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.348638" 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-07-28T01:54:41.348365" elapsed="0.000333"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.357232" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.356898" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.364615" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.364960" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.365114" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.357395" elapsed="0.007755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.365825" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.365414" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.369126" 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-07-28T01:54:41.366100" elapsed="0.003117"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.371938" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.369325" elapsed="0.002686"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.369296" elapsed="0.002747"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.375789" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.375835" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.372317" elapsed="0.003541"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.377759" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.375945" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.375925" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.377874" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:41.378087" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.378131" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.356562" elapsed="0.021592"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.380424" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.378775" elapsed="0.001720"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.378757" elapsed="0.001762"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.381094" 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-07-28T01:54:41.380672" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.381687" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.381298" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.381765" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:41.381960" 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-07-28T01:54:41.378418" 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-07-28T01:54:41.382149" elapsed="0.000478"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.355950" elapsed="0.026755"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.390930" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.390568" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.403052" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.403592" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;ethe... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.403926" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.391092" elapsed="0.012861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.404422" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.404161" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.407359" 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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;10&lt;/second&gt;&lt;nanosecond&gt;515000000&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;11&lt;/second&gt;&lt;nanosecond&gt;965000000&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;10&lt;/second&gt;&lt;nanosecond&gt;551000000&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;12&lt;/second&gt;&lt;nanosecond&gt;3000000&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;10&lt;/second&gt;&lt;nanosecond&gt;588000000&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;12&lt;/second&gt;&lt;nanosecond&gt;38000000&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;10&lt;/second&gt;&lt;nanosecond&gt;625000000&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;12&lt;/second&gt;&lt;nanosecond&gt;72000000&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;12&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;414000000&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;10&lt;/second&gt;&lt;nanosecond&gt;242000000&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;11&lt;/second&gt;&lt;nanosecond&gt;452000000&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;10&lt;/second&gt;&lt;nanosecond&gt;280000000&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;11&lt;/second&gt;&lt;nanosecond&gt;489000000&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;10&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;527000000&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;11&lt;/second&gt;&lt;nanosecond&gt;564000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;11&lt;/second&gt;&lt;nanosecond&gt;635000000&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;10&lt;/second&gt;&lt;nanosecond&gt;359000000&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;11&lt;/second&gt;&lt;nanosecond&gt;672000000&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;11&lt;/second&gt;&lt;nanosecond&gt;709000000&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;10&lt;/second&gt;&lt;nanosecond&gt;738000000&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;10&lt;/second&gt;&lt;nanosecond&gt;776000000&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;11&lt;/second&gt;&lt;nanosecond&gt;259000000&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;10&lt;/second&gt;&lt;nanosecond&gt;815000000&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;10&lt;/second&gt;&lt;nanosecond&gt;18000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;851000000&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;10&lt;/second&gt;&lt;nanosecond&gt;885000000&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;10&lt;/second&gt;&lt;nanosecond&gt;918000000&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;10&lt;/second&gt;&lt;nanosecond&gt;958000000&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;10&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;995000000&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;10&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;296000000&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;11&lt;/second&gt;&lt;nanosecond&gt;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;127000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;74000000&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;10&lt;/second&gt;&lt;nanosecond&gt;161000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;373000000&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;10&lt;/second&gt;&lt;nanosecond&gt;198000000&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;11&lt;/second&gt;&lt;nanosecond&gt;145000000&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;11&lt;/second&gt;&lt;nanosecond&gt;180000000&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;11&lt;/second&gt;&lt;nanosecond&gt;221000000&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;10&lt;/second&gt;&lt;nanosecond&gt;702000000&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;10&lt;/second&gt;&lt;nanosecond&gt;662000000&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-07-28T01:54:41.404667" elapsed="0.003732"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.410543" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.408538" elapsed="0.002055"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.408514" elapsed="0.002102"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.440526" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.440575" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.410805" elapsed="0.029793"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.442405" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.440679" elapsed="0.001797"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.440660" elapsed="0.001841"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.442535" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:41.442739" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.442783" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.390037" elapsed="0.052769"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.444997" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.443373" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.443355" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.445646" 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-07-28T01:54:41.445214" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.446225" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.445837" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.446302" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:41.446499" 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-07-28T01:54:41.443034" elapsed="0.003491"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.446686" 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-07-28T01:54:41.389363" elapsed="0.057783"/>
</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-07-28T01:54:41.335305" elapsed="0.111901"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.327756" elapsed="0.119586"/>
</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-07-28T01:54:41.458368" 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-07-28T01:54:41.458551" 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-07-28T01:54:41.458207" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.459143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7e70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.458735" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.459625" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.459323" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.460074" 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-07-28T01:54:41.459803" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.460537" 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-07-28T01:54:41.460250" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.461261" 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-07-28T01:54:41.460714" elapsed="0.000577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.461795" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.461448" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.462394" 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-07-28T01:54:41.462045" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.462928" 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-07-28T01:54:41.462603" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.463433" 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-07-28T01:54:41.463118" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.463963" 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-07-28T01:54:41.463644" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.464502" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7e70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.464159" 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-07-28T01:54:41.457832" elapsed="0.006767"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.465137" 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-07-28T01:54:41.464750" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.465579" 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-07-28T01:54:41.465319" 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-07-28T01:54:41.473958" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.473642" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.479909" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.480204" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.480351" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.474118" elapsed="0.006269"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.480991" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.480633" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.484130" 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-07-28T01:54:41.481251" elapsed="0.002958"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.486858" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.484355" elapsed="0.002571"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.484325" elapsed="0.002632"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.490769" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.490830" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.487155" elapsed="0.003698"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.492632" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.490928" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.490909" elapsed="0.001802"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.492744" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:41.492948" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.492991" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.473139" elapsed="0.019875"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.495197" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.493574" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.493557" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.495836" 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-07-28T01:54:41.495409" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.496372" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.496022" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.496446" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:41.496644" 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-07-28T01:54:41.493227" 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-07-28T01:54:41.496825" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.472500" elapsed="0.024779"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.505274" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.504973" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.518438" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.519165" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;ethe... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.519645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.505430" elapsed="0.014253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.520314" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.519905" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.524293" 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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;10&lt;/second&gt;&lt;nanosecond&gt;515000000&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;11&lt;/second&gt;&lt;nanosecond&gt;965000000&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;10&lt;/second&gt;&lt;nanosecond&gt;551000000&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;12&lt;/second&gt;&lt;nanosecond&gt;3000000&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;10&lt;/second&gt;&lt;nanosecond&gt;588000000&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;12&lt;/second&gt;&lt;nanosecond&gt;38000000&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;10&lt;/second&gt;&lt;nanosecond&gt;625000000&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;12&lt;/second&gt;&lt;nanosecond&gt;72000000&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;12&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;414000000&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;10&lt;/second&gt;&lt;nanosecond&gt;242000000&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;11&lt;/second&gt;&lt;nanosecond&gt;452000000&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;10&lt;/second&gt;&lt;nanosecond&gt;280000000&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;11&lt;/second&gt;&lt;nanosecond&gt;489000000&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;10&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;527000000&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;11&lt;/second&gt;&lt;nanosecond&gt;564000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;11&lt;/second&gt;&lt;nanosecond&gt;635000000&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;10&lt;/second&gt;&lt;nanosecond&gt;359000000&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;11&lt;/second&gt;&lt;nanosecond&gt;672000000&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;11&lt;/second&gt;&lt;nanosecond&gt;709000000&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;10&lt;/second&gt;&lt;nanosecond&gt;738000000&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;10&lt;/second&gt;&lt;nanosecond&gt;776000000&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;11&lt;/second&gt;&lt;nanosecond&gt;259000000&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;10&lt;/second&gt;&lt;nanosecond&gt;815000000&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;10&lt;/second&gt;&lt;nanosecond&gt;18000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;851000000&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;10&lt;/second&gt;&lt;nanosecond&gt;885000000&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;10&lt;/second&gt;&lt;nanosecond&gt;918000000&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;10&lt;/second&gt;&lt;nanosecond&gt;958000000&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;10&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;995000000&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;10&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;296000000&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;11&lt;/second&gt;&lt;nanosecond&gt;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;127000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;74000000&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;10&lt;/second&gt;&lt;nanosecond&gt;161000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;373000000&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;10&lt;/second&gt;&lt;nanosecond&gt;198000000&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;11&lt;/second&gt;&lt;nanosecond&gt;145000000&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;11&lt;/second&gt;&lt;nanosecond&gt;180000000&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;11&lt;/second&gt;&lt;nanosecond&gt;221000000&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;10&lt;/second&gt;&lt;nanosecond&gt;702000000&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;10&lt;/second&gt;&lt;nanosecond&gt;662000000&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-07-28T01:54:41.520623" elapsed="0.005082"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.528404" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.525809" elapsed="0.002699"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.525782" elapsed="0.002761"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.621709" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.621777" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.528746" elapsed="0.093056"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.623909" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.621953" elapsed="0.002017"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.621916" elapsed="0.002080"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.624035" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:54:41.624278" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.624322" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.504512" elapsed="0.119834"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.626717" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.625044" elapsed="0.001724"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.625025" elapsed="0.001764"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.627445" 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-07-28T01:54:41.626947" elapsed="0.000542"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.628039" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.627666" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.628115" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:41.628306" 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-07-28T01:54:41.624648" elapsed="0.003685"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.628514" elapsed="0.000432"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.503870" elapsed="0.125143"/>
</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-07-28T01:54:41.454570" elapsed="0.174512"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.447676" elapsed="0.181543"/>
</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-07-28T01:54:41.640932" 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-07-28T01:54:41.641137" 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-07-28T01:54:41.640784" elapsed="0.000385"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.641822" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.641326" elapsed="0.000526"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.642375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.642008" elapsed="0.000393"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.642914" 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-07-28T01:54:41.642569" elapsed="0.000382"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.643614" 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-07-28T01:54:41.643163" elapsed="0.000488"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.644755" 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-07-28T01:54:41.643860" elapsed="0.000937"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.645606" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.645064" elapsed="0.000603"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.646510" 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-07-28T01:54:41.645963" elapsed="0.000655"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.647340" 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-07-28T01:54:41.646832" elapsed="0.000565"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.648168" 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-07-28T01:54:41.647676" elapsed="0.000557"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.649003" 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-07-28T01:54:41.648506" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.649850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.649326" elapsed="0.000584"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:41.640391" elapsed="0.009597"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.651010" 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-07-28T01:54:41.650296" elapsed="0.000758"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.651736" 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-07-28T01:54:41.651309" elapsed="0.000508"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.661227" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.660874" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.667319" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.667642" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.667768" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.661386" elapsed="0.006409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.668262" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.668005" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.670739" 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-07-28T01:54:41.668503" 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-07-28T01:54:41.672788" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.670902" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.670881" elapsed="0.001981"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.676279" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.676395" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.673041" elapsed="0.003390"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.679128" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.676557" elapsed="0.002695"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.676530" elapsed="0.002757"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.679335" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:41.679634" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.679745" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.660488" elapsed="0.019289"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.683274" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.680749" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.680724" elapsed="0.002647"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.684206" 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-07-28T01:54:41.683598" elapsed="0.000692"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.685098" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.684545" elapsed="0.000589"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.685203" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:41.685530" 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-07-28T01:54:41.680074" elapsed="0.005494"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.685790" elapsed="0.000638"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.659873" elapsed="0.026667"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.695364" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.695016" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.707221" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.708432" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;ethe... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.709223" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.695536" elapsed="0.013747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.710543" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.709754" elapsed="0.000897"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.715932" 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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;10&lt;/second&gt;&lt;nanosecond&gt;515000000&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;11&lt;/second&gt;&lt;nanosecond&gt;965000000&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;10&lt;/second&gt;&lt;nanosecond&gt;551000000&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;12&lt;/second&gt;&lt;nanosecond&gt;3000000&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;10&lt;/second&gt;&lt;nanosecond&gt;588000000&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;12&lt;/second&gt;&lt;nanosecond&gt;38000000&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;10&lt;/second&gt;&lt;nanosecond&gt;625000000&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;12&lt;/second&gt;&lt;nanosecond&gt;72000000&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;12&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;414000000&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;10&lt;/second&gt;&lt;nanosecond&gt;242000000&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;11&lt;/second&gt;&lt;nanosecond&gt;452000000&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;10&lt;/second&gt;&lt;nanosecond&gt;280000000&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;11&lt;/second&gt;&lt;nanosecond&gt;489000000&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;10&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;527000000&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;11&lt;/second&gt;&lt;nanosecond&gt;564000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;11&lt;/second&gt;&lt;nanosecond&gt;635000000&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;10&lt;/second&gt;&lt;nanosecond&gt;359000000&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;11&lt;/second&gt;&lt;nanosecond&gt;672000000&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;11&lt;/second&gt;&lt;nanosecond&gt;709000000&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;10&lt;/second&gt;&lt;nanosecond&gt;738000000&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;10&lt;/second&gt;&lt;nanosecond&gt;776000000&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;11&lt;/second&gt;&lt;nanosecond&gt;259000000&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;10&lt;/second&gt;&lt;nanosecond&gt;815000000&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;10&lt;/second&gt;&lt;nanosecond&gt;18000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;851000000&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;10&lt;/second&gt;&lt;nanosecond&gt;885000000&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;10&lt;/second&gt;&lt;nanosecond&gt;918000000&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;10&lt;/second&gt;&lt;nanosecond&gt;958000000&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;10&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;995000000&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;10&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;296000000&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;11&lt;/second&gt;&lt;nanosecond&gt;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;127000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;74000000&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;10&lt;/second&gt;&lt;nanosecond&gt;161000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;373000000&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;10&lt;/second&gt;&lt;nanosecond&gt;198000000&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;11&lt;/second&gt;&lt;nanosecond&gt;145000000&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;11&lt;/second&gt;&lt;nanosecond&gt;180000000&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;11&lt;/second&gt;&lt;nanosecond&gt;221000000&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;10&lt;/second&gt;&lt;nanosecond&gt;702000000&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;10&lt;/second&gt;&lt;nanosecond&gt;662000000&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-07-28T01:54:41.711043" elapsed="0.005943"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.719041" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.717101" elapsed="0.001989"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.717079" elapsed="0.002034"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.751530" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.751585" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.719297" elapsed="0.032312"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.753665" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.751706" elapsed="0.002018"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.751684" elapsed="0.002108"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.753834" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:41.754130" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.754177" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.694601" elapsed="0.059598"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.756605" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.754868" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.754849" elapsed="0.001823"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.757347" 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-07-28T01:54:41.756862" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.757987" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.757590" elapsed="0.000452"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.758094" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:41.758330" 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-07-28T01:54:41.754469" elapsed="0.003887"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.758533" elapsed="0.000484"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.693904" elapsed="0.065178"/>
</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-07-28T01:54:41.636935" elapsed="0.122206"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.629571" elapsed="0.129733"/>
</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-07-28T01:54:41.770930" 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-07-28T01:54:41.771137" 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-07-28T01:54:41.770758" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.771758" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690a40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.771328" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.772273" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.771982" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.772778" 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-07-28T01:54:41.772503" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.773269" 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-07-28T01:54:41.772995" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.774099" 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-07-28T01:54:41.773495" elapsed="0.000634"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.774713" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.774326" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.775326" 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-07-28T01:54:41.774961" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.775898" 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-07-28T01:54:41.775568" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.776505" 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-07-28T01:54:41.776135" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.777093" 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-07-28T01:54:41.776705" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.777715" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690a40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.777331" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:41.770403" elapsed="0.007410"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.778501" 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-07-28T01:54:41.778042" elapsed="0.000490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.778970" 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-07-28T01:54:41.778684" 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-07-28T01:54:41.787626" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.787261" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.793526" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.793806" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.793914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.787785" elapsed="0.006154"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.794511" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.794213" elapsed="0.000385"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.797060" 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-07-28T01:54:41.794748" elapsed="0.002407"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.799375" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.797267" elapsed="0.002178"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.797246" elapsed="0.002251"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.803718" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.803783" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.799747" 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-07-28T01:54:41.806650" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.803923" elapsed="0.002806"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.803897" elapsed="0.002864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.806864" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:41.807142" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.807203" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.786904" elapsed="0.020377"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.811721" elapsed="0.000048"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.808216" elapsed="0.003653"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.808191" elapsed="0.003734"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.813702" 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-07-28T01:54:41.812438" elapsed="0.001332"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.815208" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.814211" elapsed="0.001060"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.815389" elapsed="0.000122"/>
</return>
<msg time="2026-07-28T01:54:41.815912" 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-07-28T01:54:41.807647" elapsed="0.008326"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.816363" elapsed="0.001073"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.786283" elapsed="0.031347"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.829944" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.829474" elapsed="0.000551"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.844657" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.845855" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;ethe... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.846715" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.830237" elapsed="0.016542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.847914" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.847207" elapsed="0.000824"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.854493" 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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;10&lt;/second&gt;&lt;nanosecond&gt;515000000&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;11&lt;/second&gt;&lt;nanosecond&gt;965000000&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;10&lt;/second&gt;&lt;nanosecond&gt;551000000&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;12&lt;/second&gt;&lt;nanosecond&gt;3000000&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;10&lt;/second&gt;&lt;nanosecond&gt;588000000&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;12&lt;/second&gt;&lt;nanosecond&gt;38000000&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;10&lt;/second&gt;&lt;nanosecond&gt;625000000&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;12&lt;/second&gt;&lt;nanosecond&gt;72000000&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;12&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;414000000&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;10&lt;/second&gt;&lt;nanosecond&gt;242000000&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;11&lt;/second&gt;&lt;nanosecond&gt;452000000&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;10&lt;/second&gt;&lt;nanosecond&gt;280000000&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;11&lt;/second&gt;&lt;nanosecond&gt;489000000&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;10&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;527000000&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;11&lt;/second&gt;&lt;nanosecond&gt;564000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;11&lt;/second&gt;&lt;nanosecond&gt;635000000&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;10&lt;/second&gt;&lt;nanosecond&gt;359000000&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;11&lt;/second&gt;&lt;nanosecond&gt;672000000&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;11&lt;/second&gt;&lt;nanosecond&gt;709000000&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;10&lt;/second&gt;&lt;nanosecond&gt;738000000&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;10&lt;/second&gt;&lt;nanosecond&gt;776000000&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;11&lt;/second&gt;&lt;nanosecond&gt;259000000&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;10&lt;/second&gt;&lt;nanosecond&gt;815000000&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;10&lt;/second&gt;&lt;nanosecond&gt;18000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;851000000&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;10&lt;/second&gt;&lt;nanosecond&gt;885000000&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;10&lt;/second&gt;&lt;nanosecond&gt;918000000&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;10&lt;/second&gt;&lt;nanosecond&gt;958000000&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;10&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;995000000&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;10&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;296000000&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;11&lt;/second&gt;&lt;nanosecond&gt;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;127000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;74000000&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;10&lt;/second&gt;&lt;nanosecond&gt;161000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;373000000&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;10&lt;/second&gt;&lt;nanosecond&gt;198000000&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;11&lt;/second&gt;&lt;nanosecond&gt;145000000&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;11&lt;/second&gt;&lt;nanosecond&gt;180000000&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;11&lt;/second&gt;&lt;nanosecond&gt;221000000&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;10&lt;/second&gt;&lt;nanosecond&gt;702000000&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;10&lt;/second&gt;&lt;nanosecond&gt;662000000&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-07-28T01:54:41.848381" elapsed="0.007330"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.857663" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.855811" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.855781" elapsed="0.001966"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.888742" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.888791" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.857917" elapsed="0.030897"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.890801" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.888899" elapsed="0.001959"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.888879" elapsed="0.002004"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.890917" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:41.891184" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:41.891230" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.828884" elapsed="0.062368"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.893713" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.891979" elapsed="0.001780"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.891960" elapsed="0.001820"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.894485" 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-07-28T01:54:41.893972" elapsed="0.000575"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.895105" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.894712" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.895180" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:41.895359" 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-07-28T01:54:41.891578" elapsed="0.003805"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.895559" elapsed="0.000454"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:41.827817" elapsed="0.068259"/>
</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-07-28T01:54:41.766928" elapsed="0.129207"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.759636" elapsed="0.136677"/>
</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-07-28T01:54:41.909335" 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-07-28T01:54:41.909528" 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-07-28T01:54:41.909151" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:41.910228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063fec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:41.909745" elapsed="0.000511"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.910763" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:41.910411" elapsed="0.000378"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.911251" 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-07-28T01:54:41.910977" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:41.911795" 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-07-28T01:54:41.911483" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.912689" 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-07-28T01:54:41.911977" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.913293" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.912917" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.913980" 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-07-28T01:54:41.913554" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.914573" 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-07-28T01:54:41.914180" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.915168" 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-07-28T01:54:41.914810" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.915782" 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-07-28T01:54:41.915404" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.916351" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063fec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:41.915982" 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-07-28T01:54:41.908768" elapsed="0.007734"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.917122" 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-07-28T01:54:41.916655" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.917606" 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-07-28T01:54:41.917308" 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-07-28T01:54:41.934001" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.933479" elapsed="0.000570"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.941555" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.941850" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:41.942034" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.934250" elapsed="0.007811"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.942544" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.942230" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.945026" 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-07-28T01:54:41.942737" elapsed="0.002439"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.947425" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.945261" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.945235" elapsed="0.002365"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:54:41.952137" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:41.952244" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:54:41.947850" elapsed="0.004432"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:41.955163" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:41.952387" elapsed="0.002858"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.952361" elapsed="0.002918"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:41.955326" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:41.955675" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:54:41.955737" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:41.932964" elapsed="0.022805"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.959285" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.956704" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.956679" elapsed="0.002709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.960025" 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-07-28T01:54:41.959565" elapsed="0.000525"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.960672" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:41.960256" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:41.960788" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:41.960970" 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-07-28T01:54:41.956120" elapsed="0.004876"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:41.961192" 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-07-28T01:54:41.931781" elapsed="0.029898"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.970609" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:41.970151" elapsed="0.000541"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:41.984781" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:41.986125" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;ethe... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:54:41.986904" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:41.970862" elapsed="0.016110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.988069" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:41.987391" elapsed="0.000783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:41.994036" 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;11&lt;/second&gt;&lt;nanosecond&gt;745000000&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;10&lt;/second&gt;&lt;nanosecond&gt;405000000&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;11&lt;/second&gt;&lt;nanosecond&gt;784000000&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;11&lt;/second&gt;&lt;nanosecond&gt;822000000&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;11&lt;/second&gt;&lt;nanosecond&gt;861000000&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;11&lt;/second&gt;&lt;nanosecond&gt;896000000&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;10&lt;/second&gt;&lt;nanosecond&gt;442000000&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;10&lt;/second&gt;&lt;nanosecond&gt;478000000&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;11&lt;/second&gt;&lt;nanosecond&gt;933000000&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;10&lt;/second&gt;&lt;nanosecond&gt;515000000&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;11&lt;/second&gt;&lt;nanosecond&gt;965000000&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;10&lt;/second&gt;&lt;nanosecond&gt;551000000&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;12&lt;/second&gt;&lt;nanosecond&gt;3000000&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;10&lt;/second&gt;&lt;nanosecond&gt;588000000&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;12&lt;/second&gt;&lt;nanosecond&gt;38000000&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;10&lt;/second&gt;&lt;nanosecond&gt;625000000&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;12&lt;/second&gt;&lt;nanosecond&gt;72000000&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;12&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;109000000&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;11&lt;/second&gt;&lt;nanosecond&gt;414000000&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;10&lt;/second&gt;&lt;nanosecond&gt;242000000&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;11&lt;/second&gt;&lt;nanosecond&gt;452000000&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;10&lt;/second&gt;&lt;nanosecond&gt;280000000&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;11&lt;/second&gt;&lt;nanosecond&gt;489000000&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;10&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;527000000&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;11&lt;/second&gt;&lt;nanosecond&gt;564000000&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;11&lt;/second&gt;&lt;nanosecond&gt;598000000&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;11&lt;/second&gt;&lt;nanosecond&gt;635000000&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;10&lt;/second&gt;&lt;nanosecond&gt;359000000&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;11&lt;/second&gt;&lt;nanosecond&gt;672000000&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;11&lt;/second&gt;&lt;nanosecond&gt;709000000&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;10&lt;/second&gt;&lt;nanosecond&gt;738000000&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;10&lt;/second&gt;&lt;nanosecond&gt;776000000&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;11&lt;/second&gt;&lt;nanosecond&gt;259000000&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;10&lt;/second&gt;&lt;nanosecond&gt;815000000&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;10&lt;/second&gt;&lt;nanosecond&gt;18000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;851000000&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;10&lt;/second&gt;&lt;nanosecond&gt;885000000&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;10&lt;/second&gt;&lt;nanosecond&gt;918000000&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;10&lt;/second&gt;&lt;nanosecond&gt;958000000&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;10&lt;/second&gt;&lt;nanosecond&gt;54000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;10&lt;/second&gt;&lt;nanosecond&gt;995000000&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;10&lt;/second&gt;&lt;nanosecond&gt;92000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;296000000&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;11&lt;/second&gt;&lt;nanosecond&gt;35000000&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;10&lt;/second&gt;&lt;nanosecond&gt;127000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;318000000&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;11&lt;/second&gt;&lt;nanosecond&gt;74000000&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;10&lt;/second&gt;&lt;nanosecond&gt;161000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/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;11&lt;/second&gt;&lt;nanosecond&gt;373000000&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;10&lt;/second&gt;&lt;nanosecond&gt;198000000&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;11&lt;/second&gt;&lt;nanosecond&gt;145000000&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;11&lt;/second&gt;&lt;nanosecond&gt;180000000&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;11&lt;/second&gt;&lt;nanosecond&gt;221000000&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;10&lt;/second&gt;&lt;nanosecond&gt;702000000&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;10&lt;/second&gt;&lt;nanosecond&gt;662000000&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-07-28T01:54:41.988532" elapsed="0.007571"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:41.999539" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:41.996270" elapsed="0.003321"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:41.996225" elapsed="0.003389"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.028804" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:54:42.028854" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:41.999760" elapsed="0.029118"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:42.030844" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:42.028972" elapsed="0.002021"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:42.028949" elapsed="0.002099"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:42.031123" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:54:42.031632" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:54:42.031730" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:41.969598" elapsed="0.062182"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:42.035318" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:42.033376" elapsed="0.001987"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:42.033331" elapsed="0.002054"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.036031" 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-07-28T01:54:42.035557" elapsed="0.000501"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.036613" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:42.036223" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:42.036703" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:42.036893" 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-07-28T01:54:42.032333" elapsed="0.004586"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:42.037092" 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-07-28T01:54:41.968881" elapsed="0.068715"/>
</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-07-28T01:54:41.904558" elapsed="0.133100"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:41.896693" elapsed="0.141112"/>
</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-07-28T01:54:42.039159" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.038909" 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-07-28T01:54:42.042786" 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-07-28T01:54:42.042958" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.042626" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.043594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.043150" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.044074" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.043775" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.044569" 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-07-28T01:54:42.044264" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.045031" 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-07-28T01:54:42.044747" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.045878" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.045209" elapsed="0.000707"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.046522" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.046096" elapsed="0.000470"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.047068" 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-07-28T01:54:42.046732" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.047605" 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-07-28T01:54:42.047263" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.048124" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.047810" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.048656" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.048320" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.049174" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.048865" 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-07-28T01:54:42.042262" elapsed="0.007023"/>
</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-07-28T01:54:42.064531" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.064598" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.064732" 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-07-28T01:54:42.056755" elapsed="0.008013"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.067852" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.065014" elapsed="0.002898"/>
</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-07-28T01:54:42.056332" elapsed="0.011666"/>
</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-07-28T01:54:42.049437" elapsed="0.018652"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.038766" elapsed="0.029376"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.068864" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.068510" 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-07-28T01:54:42.073900" 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-07-28T01:54:42.074096" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.073667" elapsed="0.000470"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.074944" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ba60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.074353" elapsed="0.000629"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.075807" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.075320" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.076451" 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-07-28T01:54:42.076068" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.077106" 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-07-28T01:54:42.076722" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.078345" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.077353" elapsed="0.001036"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.079119" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.078639" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.079943" 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-07-28T01:54:42.079487" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.080709" 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-07-28T01:54:42.080233" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.081435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.080979" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.082221" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.081731" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.082968" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ba60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.082518" elapsed="0.000521"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.073153" elapsed="0.009964"/>
</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-07-28T01:54:42.100065" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.100109" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.100199" 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-07-28T01:54:42.093121" elapsed="0.007103"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.102605" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.100394" elapsed="0.002255"/>
</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-07-28T01:54:42.092554" elapsed="0.010153"/>
</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-07-28T01:54:42.083337" elapsed="0.019423"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.068294" elapsed="0.034504"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.103297" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.103037" elapsed="0.000305"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.106953" 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-07-28T01:54:42.107128" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.106778" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.107980" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eda80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.107391" elapsed="0.000628"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.108662" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.108240" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.109296" 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-07-28T01:54:42.108908" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.110067" 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-07-28T01:54:42.109571" elapsed="0.000534"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.111156" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.110323" elapsed="0.000877"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.111891" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.111417" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.112698" 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-07-28T01:54:42.112233" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.113422" 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-07-28T01:54:42.112976" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.114206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.113723" elapsed="0.000548"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.114944" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.114508" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.115684" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eda80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.115226" elapsed="0.000518"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.106409" elapsed="0.009414"/>
</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-07-28T01:54:42.131587" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.131651" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.131781" 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-07-28T01:54:42.124800" elapsed="0.007018"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.135012" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.132048" elapsed="0.003030"/>
</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-07-28T01:54:42.124399" elapsed="0.010774"/>
</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-07-28T01:54:42.116034" elapsed="0.019223"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.102908" elapsed="0.032402"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.136006" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.135653" elapsed="0.000415"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.143941" 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-07-28T01:54:42.144338" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.143586" elapsed="0.000837"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.146167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bd30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.144903" elapsed="0.001338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.147141" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.146676" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.147814" 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-07-28T01:54:42.147398" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.148481" 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-07-28T01:54:42.148077" elapsed="0.000453"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.149650" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.148743" elapsed="0.000953"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.150450" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.149972" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.151283" 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-07-28T01:54:42.150823" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.152054" 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-07-28T01:54:42.151584" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.152802" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.152343" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.153568" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.153096" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.154341" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bd30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.153878" elapsed="0.000524"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.142562" elapsed="0.011968"/>
</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-07-28T01:54:42.169792" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.169905" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.170036" 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-07-28T01:54:42.162952" elapsed="0.007119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.173310" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.170310" elapsed="0.003071"/>
</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-07-28T01:54:42.162556" elapsed="0.010929"/>
</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-07-28T01:54:42.154743" elapsed="0.018821"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.135449" elapsed="0.038169"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.174341" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.173984" 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-07-28T01:54:42.179274" 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-07-28T01:54:42.179414" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.179136" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.180041" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.179617" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.180540" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.180225" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.181007" 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-07-28T01:54:42.180721" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.181488" 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-07-28T01:54:42.181187" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.182364" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.181670" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.182911" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.182572" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.183438" 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-07-28T01:54:42.183123" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.184036" 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-07-28T01:54:42.183702" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.184560" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.184236" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.185087" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.184775" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.185630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.185300" 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-07-28T01:54:42.178760" elapsed="0.006981"/>
</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-07-28T01:54:42.200351" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.200426" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.200589" 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-07-28T01:54:42.192905" elapsed="0.007720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.203898" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.200853" elapsed="0.003121"/>
</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-07-28T01:54:42.192507" elapsed="0.011552"/>
</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-07-28T01:54:42.185915" elapsed="0.018216"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.173763" elapsed="0.030419"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.204889" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.204522" 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-07-28T01:54:42.210000" 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-07-28T01:54:42.210192" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.209756" elapsed="0.000477"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.211047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394aca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.210446" elapsed="0.000639"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.211750" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.211315" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.212399" 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-07-28T01:54:42.212001" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.213089" 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-07-28T01:54:42.212689" elapsed="0.000437"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.214304" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.213339" elapsed="0.001008"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.215078" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.214607" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.215842" 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-07-28T01:54:42.215364" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.216662" 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-07-28T01:54:42.216169" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.217391" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.216940" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.218168" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.217700" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.218940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394aca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.218484" elapsed="0.000517"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.209251" elapsed="0.009828"/>
</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-07-28T01:54:42.234112" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.234159" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.234259" 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-07-28T01:54:42.227344" elapsed="0.006941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.236658" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.234444" elapsed="0.002258"/>
</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-07-28T01:54:42.226955" elapsed="0.009806"/>
</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-07-28T01:54:42.219289" elapsed="0.017524"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.204320" elapsed="0.032530"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.237343" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.237081" 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-07-28T01:54:42.240923" 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-07-28T01:54:42.241145" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.240781" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.241798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eecf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.241328" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.242483" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.242067" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.243184" 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-07-28T01:54:42.242751" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.243858" 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-07-28T01:54:42.243435" elapsed="0.000459"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.245124" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.244104" elapsed="0.001064"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.245905" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.245391" elapsed="0.000575"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.246677" 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-07-28T01:54:42.246202" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.247490" 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-07-28T01:54:42.247006" elapsed="0.000547"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.248228" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.247773" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.248997" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.248544" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.249755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eecf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.249277" elapsed="0.000593"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.240416" elapsed="0.009533"/>
</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-07-28T01:54:42.264506" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.264553" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.264644" 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-07-28T01:54:42.257284" elapsed="0.007386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.267016" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.264844" 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-07-28T01:54:42.256882" elapsed="0.010238"/>
</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-07-28T01:54:42.250165" elapsed="0.017008"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.236949" elapsed="0.030262"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.267730" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.267471" 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-07-28T01:54:42.271563" 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-07-28T01:54:42.271752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.271342" elapsed="0.000450"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.272636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eda30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.272005" elapsed="0.000672"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.273303" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.272906" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.274036" 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-07-28T01:54:42.273598" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.274738" 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-07-28T01:54:42.274307" elapsed="0.000468"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.276101" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.274985" elapsed="0.001159"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.276862" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.276368" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.277644" 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-07-28T01:54:42.277154" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.278476" 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-07-28T01:54:42.277987" elapsed="0.000607"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.279143" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.278825" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.279693" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.279343" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.280220" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eda30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.279903" 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-07-28T01:54:42.270848" elapsed="0.009470"/>
</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-07-28T01:54:42.294919" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.294965" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.295057" 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-07-28T01:54:42.287622" elapsed="0.007461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.298646" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.295244" elapsed="0.003448"/>
</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-07-28T01:54:42.287199" elapsed="0.011553"/>
</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-07-28T01:54:42.280498" elapsed="0.018307"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.267313" elapsed="0.031560"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.299590" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.299198" elapsed="0.000467"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.304691" 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-07-28T01:54:42.304885" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.304495" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.305809" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842160&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.305142" elapsed="0.000708"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.306541" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.306100" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.307212" 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-07-28T01:54:42.306810" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.307897" 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-07-28T01:54:42.307491" elapsed="0.000451"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.309214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.308157" elapsed="0.001110"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.310023" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.309511" elapsed="0.000572"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.310796" 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-07-28T01:54:42.310317" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.311332" 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-07-28T01:54:42.311014" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.311921" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.311596" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.312434" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.312125" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.312992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842160&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.312677" 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-07-28T01:54:42.303974" elapsed="0.009128"/>
</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-07-28T01:54:42.326214" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.326260" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.326354" 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-07-28T01:54:42.320234" elapsed="0.006152"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.328688" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.326572" elapsed="0.002160"/>
</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-07-28T01:54:42.319845" elapsed="0.008957"/>
</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-07-28T01:54:42.313252" elapsed="0.015609"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.299016" elapsed="0.029882"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.329391" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.329129" elapsed="0.000306"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.333013" 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-07-28T01:54:42.333150" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.332877" elapsed="0.000302"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.333824" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.333329" elapsed="0.000525"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.334289" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.334008" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.334772" 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-07-28T01:54:42.334487" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.335410" 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-07-28T01:54:42.335010" elapsed="0.000437"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.336739" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.335683" elapsed="0.001098"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.337505" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.337018" elapsed="0.000551"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.338267" 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-07-28T01:54:42.337801" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.339028" 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-07-28T01:54:42.338572" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.339853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.339373" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.340616" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.340130" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.341369" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.340910" elapsed="0.000518"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.332528" elapsed="0.009011"/>
</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-07-28T01:54:42.356365" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.356416" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.356543" 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-07-28T01:54:42.350380" elapsed="0.006190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.359860" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.356758" elapsed="0.003165"/>
</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-07-28T01:54:42.349975" elapsed="0.010034"/>
</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-07-28T01:54:42.341791" elapsed="0.018295"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.328998" elapsed="0.031152"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.360890" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.360522" 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-07-28T01:54:42.366079" 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-07-28T01:54:42.366276" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.365864" elapsed="0.000453"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.367099" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.366571" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.367598" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.367283" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.368072" 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-07-28T01:54:42.367780" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.368555" 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-07-28T01:54:42.368255" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.369532" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.368736" elapsed="0.000828"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.370099" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.369760" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.370650" 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-07-28T01:54:42.370307" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.371172" 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-07-28T01:54:42.370845" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.371712" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.371375" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.372295" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.371977" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.372850" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.372524" 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-07-28T01:54:42.365316" elapsed="0.007635"/>
</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-07-28T01:54:42.386164" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.386211" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.386315" 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-07-28T01:54:42.380204" elapsed="0.006138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.389418" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.386530" elapsed="0.002977"/>
</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-07-28T01:54:42.379800" elapsed="0.009791"/>
</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-07-28T01:54:42.373104" elapsed="0.016580"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.360309" elapsed="0.029481"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.390524" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.390136" 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-07-28T01:54:42.395597" 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-07-28T01:54:42.395833" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.395376" elapsed="0.000509"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.396763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a46d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.396136" elapsed="0.000667"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.397448" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.397037" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.398193" 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-07-28T01:54:42.397777" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.398921" 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-07-28T01:54:42.398484" elapsed="0.000469"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.399900" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.399122" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.400440" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.400091" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.400988" 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-07-28T01:54:42.400666" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.401533" 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-07-28T01:54:42.401185" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.402073" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.401762" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.402669" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.402329" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.403212" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a46d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.402886" 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-07-28T01:54:42.394886" elapsed="0.008427"/>
</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-07-28T01:54:42.416495" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.416552" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.416646" 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-07-28T01:54:42.410425" elapsed="0.006247"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.419152" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.416839" elapsed="0.002385"/>
</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-07-28T01:54:42.410037" elapsed="0.009278"/>
</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-07-28T01:54:42.403481" elapsed="0.015908"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.389938" elapsed="0.029504"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.420176" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.419803" 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-07-28T01:54:42.425289" 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-07-28T01:54:42.425491" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.425100" elapsed="0.000436"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.426357" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.425783" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.427026" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.426637" elapsed="0.000425"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.427674" 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-07-28T01:54:42.427273" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.428302" 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-07-28T01:54:42.427922" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.429500" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.428569" elapsed="0.000976"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.430259" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.429808" elapsed="0.000510"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.431012" 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-07-28T01:54:42.430558" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.431539" 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-07-28T01:54:42.431208" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.432046" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.431735" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.432626" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.432292" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.433142" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.432829" 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-07-28T01:54:42.424621" elapsed="0.008618"/>
</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-07-28T01:54:42.446680" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.446726" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.446816" 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-07-28T01:54:42.440202" elapsed="0.006641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.449092" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.447008" elapsed="0.002128"/>
</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-07-28T01:54:42.439815" elapsed="0.009379"/>
</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-07-28T01:54:42.433392" elapsed="0.015854"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.419607" elapsed="0.029676"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.449830" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.449531" elapsed="0.000344"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.454538" 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-07-28T01:54:42.454718" 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-07-28T01:54:42.454326" elapsed="0.000432"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.455607" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.455013" elapsed="0.000633"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.456250" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.455862" elapsed="0.000424"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.456901" 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-07-28T01:54:42.456521" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.457553" 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-07-28T01:54:42.457149" elapsed="0.000441"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.458784" 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-07-28T01:54:42.457827" elapsed="0.000999"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.459515" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.459045" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.460218" 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-07-28T01:54:42.459787" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.460952" 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-07-28T01:54:42.460504" elapsed="0.000505"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.461705" 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-07-28T01:54:42.461217" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.462510" 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-07-28T01:54:42.462039" elapsed="0.000538"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.463118" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.462792" 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-07-28T01:54:42.453850" elapsed="0.009366"/>
</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-07-28T01:54:42.476740" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.476841" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.477038" 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-07-28T01:54:42.470286" elapsed="0.006809"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.482636" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.477499" elapsed="0.005235"/>
</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-07-28T01:54:42.469884" elapsed="0.012977"/>
</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-07-28T01:54:42.463366" elapsed="0.019576"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.449384" elapsed="0.033612"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.483737" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.483359" 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-07-28T01:54:42.489152" 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-07-28T01:54:42.489336" 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-07-28T01:54:42.488962" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.490190" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f330&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.489612" elapsed="0.000617"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.490850" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.490441" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.491500" 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-07-28T01:54:42.491096" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.492159" 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-07-28T01:54:42.491771" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.493312" 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-07-28T01:54:42.492402" elapsed="0.000953"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.494079" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.493593" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.494840" 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-07-28T01:54:42.494350" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.495403" 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-07-28T01:54:42.495093" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.495910" 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-07-28T01:54:42.495609" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.496469" 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-07-28T01:54:42.496102" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.496990" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f330&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.496676" 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-07-28T01:54:42.488480" elapsed="0.008609"/>
</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-07-28T01:54:42.511218" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.511264" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.511363" 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-07-28T01:54:42.504247" elapsed="0.007144"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.513689" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.511575" elapsed="0.002162"/>
</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-07-28T01:54:42.503807" elapsed="0.009991"/>
</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-07-28T01:54:42.497243" elapsed="0.016613"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.483173" elapsed="0.030722"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.514381" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.514130" 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-07-28T01:54:42.519137" 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-07-28T01:54:42.519313" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.518949" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.520137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eda80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.519585" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.520829" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.520411" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.521490" 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-07-28T01:54:42.521082" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.522156" 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-07-28T01:54:42.521772" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.523213" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.522403" elapsed="0.000852"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.523931" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.523491" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.524650" 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-07-28T01:54:42.524200" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.525430" 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-07-28T01:54:42.524918" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.526288" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.525807" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.526992" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.526582" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.527556" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eda80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.527229" 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-07-28T01:54:42.518475" elapsed="0.009181"/>
</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-07-28T01:54:42.540476" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.540524" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.540614" 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-07-28T01:54:42.534753" elapsed="0.005887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.542898" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.540799" elapsed="0.002143"/>
</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-07-28T01:54:42.534342" elapsed="0.008670"/>
</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-07-28T01:54:42.527804" elapsed="0.015271"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.513997" elapsed="0.029117"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.543629" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.543347" 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-07-28T01:54:42.549208" 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-07-28T01:54:42.549402" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.549020" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.550294" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6de40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.549702" elapsed="0.000630"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.551002" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.550618" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.551660" 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-07-28T01:54:42.551246" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.552293" 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-07-28T01:54:42.551914" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.553306" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.552558" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.554108" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.553596" elapsed="0.000574"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.554863" 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-07-28T01:54:42.554389" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.555595" 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-07-28T01:54:42.555135" elapsed="0.000519"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.556288" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.555867" elapsed="0.000483"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.557140" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.556584" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.557963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6de40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.557505" elapsed="0.000501"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.548552" elapsed="0.009510"/>
</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-07-28T01:54:42.571153" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.571199" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.571288" 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-07-28T01:54:42.565040" elapsed="0.006274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.573546" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.571494" elapsed="0.002095"/>
</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-07-28T01:54:42.564653" elapsed="0.009012"/>
</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-07-28T01:54:42.558213" elapsed="0.015504"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.543216" elapsed="0.030538"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.574272" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.573986" elapsed="0.000334"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.577967" 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-07-28T01:54:42.578259" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.577746" elapsed="0.000578"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.579564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e890&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.578690" elapsed="0.000938"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.580604" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.579963" elapsed="0.000698"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.581673" 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-07-28T01:54:42.580997" elapsed="0.000737"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.582298" 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-07-28T01:54:42.582024" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.583035" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.582486" elapsed="0.000579"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.583555" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.583223" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.584062" 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-07-28T01:54:42.583750" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.584582" 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-07-28T01:54:42.584255" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.585076" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.584776" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.585589" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.585270" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.586169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e890&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.585855" 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-07-28T01:54:42.577369" elapsed="0.008898"/>
</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-07-28T01:54:42.598983" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.599028" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.599118" 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-07-28T01:54:42.593161" elapsed="0.005982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.601357" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.599301" elapsed="0.002099"/>
</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-07-28T01:54:42.592780" elapsed="0.008693"/>
</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-07-28T01:54:42.586414" elapsed="0.015113"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.573858" elapsed="0.027706"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.602055" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.601803" 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-07-28T01:54:42.605515" 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-07-28T01:54:42.605672" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.605367" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.606496" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.605880" elapsed="0.000657"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.607126" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.606745" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.607764" 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-07-28T01:54:42.607369" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.608375" 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-07-28T01:54:42.608006" elapsed="0.000404"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.609618" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.608636" elapsed="0.001035"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.610335" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.609892" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.611058" 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-07-28T01:54:42.610627" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.611786" 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-07-28T01:54:42.611324" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.612525" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.612087" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.613223" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.612798" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.614030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.613569" elapsed="0.000520"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.605037" elapsed="0.009129"/>
</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-07-28T01:54:42.628287" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.628339" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.628450" 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-07-28T01:54:42.622203" elapsed="0.006304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.631590" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.628677" elapsed="0.002975"/>
</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-07-28T01:54:42.621822" elapsed="0.009910"/>
</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-07-28T01:54:42.614374" elapsed="0.017429"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.601674" elapsed="0.030181"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.632537" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.632170" 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-07-28T01:54:42.637364" 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-07-28T01:54:42.637564" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.637177" elapsed="0.000459"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.638253" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.637845" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.638721" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.638430" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.639163" 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-07-28T01:54:42.638896" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.639623" 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-07-28T01:54:42.639336" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.640479" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.639795" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.641101" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.640717" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.641910" 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-07-28T01:54:42.641447" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.642424" 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-07-28T01:54:42.642111" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.642940" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.642635" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.643526" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.643202" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.644249" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.643849" elapsed="0.000442"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.636715" elapsed="0.007631"/>
</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-07-28T01:54:42.657611" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.657663" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.657755" 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-07-28T01:54:42.651566" elapsed="0.006214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.661159" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.657942" elapsed="0.003264"/>
</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-07-28T01:54:42.651165" elapsed="0.010100"/>
</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-07-28T01:54:42.644510" elapsed="0.016806"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.631992" elapsed="0.029361"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.661927" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.661641" elapsed="0.000353"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.667112" 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-07-28T01:54:42.667346" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.666921" elapsed="0.000468"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.668207" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0d10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.667620" elapsed="0.000626"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.668881" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.668482" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.669537" 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-07-28T01:54:42.669134" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.670213" 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-07-28T01:54:42.669824" elapsed="0.000426"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.671504" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.670478" elapsed="0.001070"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.672224" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.671771" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.672956" 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-07-28T01:54:42.672519" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.673789" 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-07-28T01:54:42.673228" elapsed="0.000628"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.674338" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.674015" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.674875" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.674552" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.675431" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0d10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.675071" 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-07-28T01:54:42.666436" elapsed="0.009109"/>
</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-07-28T01:54:42.689727" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.689790" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.689916" 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-07-28T01:54:42.682937" elapsed="0.007014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.693134" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.690183" elapsed="0.003012"/>
</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-07-28T01:54:42.682376" elapsed="0.010898"/>
</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-07-28T01:54:42.675695" elapsed="0.017666"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.661466" elapsed="0.031948"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.694190" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.693796" elapsed="0.000456"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.698869" 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-07-28T01:54:42.699001" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.698732" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.699586" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2d40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.699182" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.700056" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.699768" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.700528" 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-07-28T01:54:42.700236" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.700983" 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-07-28T01:54:42.700707" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.701718" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.701159" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.702224" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.701908" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.702785" 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-07-28T01:54:42.702417" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.703294" 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-07-28T01:54:42.702985" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.703808" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.703504" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.704358" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.704000" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.704893" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2d40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.704581" 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-07-28T01:54:42.698370" elapsed="0.006662"/>
</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-07-28T01:54:42.719747" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.719791" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.719884" 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-07-28T01:54:42.713018" elapsed="0.006892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.722031" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.720066" elapsed="0.002008"/>
</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-07-28T01:54:42.712477" elapsed="0.009654"/>
</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-07-28T01:54:42.705181" elapsed="0.017000"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.693596" elapsed="0.028622"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.722707" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.722443" 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-07-28T01:54:42.726625" 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-07-28T01:54:42.726802" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.726416" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.727703" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.727053" elapsed="0.000690"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.728341" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.727955" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.729196" 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-07-28T01:54:42.728754" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.729964" 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-07-28T01:54:42.729567" elapsed="0.000432"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.731219" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.730208" elapsed="0.001053"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.731936" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.731496" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.732656" 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-07-28T01:54:42.732207" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.733418" 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-07-28T01:54:42.732924" elapsed="0.000571"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.734149" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.733725" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.734867" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.734418" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.735592" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.735138" elapsed="0.000562"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.725919" elapsed="0.009860"/>
</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-07-28T01:54:42.749209" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.749254" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.749353" 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-07-28T01:54:42.743399" elapsed="0.005980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.752198" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.749585" elapsed="0.002674"/>
</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-07-28T01:54:42.743018" elapsed="0.009326"/>
</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-07-28T01:54:42.735988" elapsed="0.016429"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.722315" elapsed="0.030175"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.753229" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.752812" elapsed="0.000480"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:42.758282" 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-07-28T01:54:42.758426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.758140" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.759048" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.758627" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.759531" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.759230" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.759994" 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-07-28T01:54:42.759714" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.760448" 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-07-28T01:54:42.760174" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.761421" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.760642" elapsed="0.000823"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.761975" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.761652" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.762493" 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-07-28T01:54:42.762170" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.763036" 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-07-28T01:54:42.762685" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.763548" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.763231" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.764048" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.763744" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.764665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.764328" 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-07-28T01:54:42.757645" elapsed="0.007154"/>
</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-07-28T01:54:42.778347" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.778410" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.778580" 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-07-28T01:54:42.771795" elapsed="0.006824"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.781562" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.778840" elapsed="0.002790"/>
</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-07-28T01:54:42.771397" elapsed="0.010330"/>
</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-07-28T01:54:42.764949" elapsed="0.016854"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.752630" elapsed="0.029239"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.782597" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.782227" 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-07-28T01:54:42.787499" 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-07-28T01:54:42.787677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.787293" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.788484" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1e90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.787924" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.789118" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.788736" elapsed="0.000418"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.789779" 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-07-28T01:54:42.789365" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.790398" 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-07-28T01:54:42.790024" elapsed="0.000410"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.791480" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.790662" elapsed="0.000862"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.792177" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.791741" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.792897" 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-07-28T01:54:42.792447" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.793642" 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-07-28T01:54:42.793164" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.794378" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.793941" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.795103" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.794678" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.795829" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1e90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.795373" 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-07-28T01:54:42.786833" elapsed="0.009185"/>
</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-07-28T01:54:42.810691" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.810736" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.810835" 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-07-28T01:54:42.803701" elapsed="0.007173"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.813836" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.811094" elapsed="0.002816"/>
</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-07-28T01:54:42.803307" elapsed="0.010701"/>
</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-07-28T01:54:42.796226" elapsed="0.017853"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.782040" elapsed="0.032090"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.814815" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.814445" 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-07-28T01:54:42.819678" 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-07-28T01:54:42.819853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:42.819488" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.820663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39482c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.820102" elapsed="0.000599"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.821294" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.820914" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.821971" 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-07-28T01:54:42.821595" elapsed="0.000407"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.822423" 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-07-28T01:54:42.822155" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.823213" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.822613" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.823729" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.823397" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.824227" 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-07-28T01:54:42.823923" elapsed="0.000344"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.824782" 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-07-28T01:54:42.824417" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.825304" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:42.824997" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.825852" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.825538" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.826356" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39482c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.826050" 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-07-28T01:54:42.819003" elapsed="0.007464"/>
</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-07-28T01:54:42.840238" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.840282" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.840371" 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-07-28T01:54:42.833433" elapsed="0.006963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.843088" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.840575" elapsed="0.002573"/>
</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-07-28T01:54:42.833047" elapsed="0.010180"/>
</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-07-28T01:54:42.826657" elapsed="0.016642"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.814266" elapsed="0.029085"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.844033" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.843689" 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-07-28T01:54:42.848900" 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-07-28T01:54:42.849074" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.848715" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.849963" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edbc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.849323" elapsed="0.000688"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.850632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.850224" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.851259" 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-07-28T01:54:42.850884" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.851902" 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-07-28T01:54:42.851526" elapsed="0.000411"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.853057" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:42.852143" elapsed="0.000957"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.853836" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.853316" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.854402" 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-07-28T01:54:42.854095" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.854919" 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-07-28T01:54:42.854608" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.855407" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.855108" elapsed="0.000343"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.855922" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:42.855617" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.856420" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edbc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.856116" 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-07-28T01:54:42.848231" elapsed="0.008300"/>
</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-07-28T01:54:42.869900" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.869945" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.870034" 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-07-28T01:54:42.863652" elapsed="0.006408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.872375" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.870218" elapsed="0.002200"/>
</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-07-28T01:54:42.863244" elapsed="0.009247"/>
</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-07-28T01:54:42.856714" elapsed="0.015829"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.843506" elapsed="0.029074"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.873057" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.872806" 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-07-28T01:54:42.877791" 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-07-28T01:54:42.877968" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:42.877595" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.878786" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a74c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.878220" elapsed="0.000606"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.879429" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.879041" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.880084" 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-07-28T01:54:42.879704" elapsed="0.000416"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.880739" 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-07-28T01:54:42.880329" elapsed="0.000446"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.881907" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.881031" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.882640" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.882172" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.883345" 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-07-28T01:54:42.882917" elapsed="0.000484"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.884067" 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-07-28T01:54:42.883632" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.884777" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:42.884334" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.885540" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:42.885049" elapsed="0.000557"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.886131" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a74c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.885815" 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-07-28T01:54:42.877075" elapsed="0.009151"/>
</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-07-28T01:54:42.898833" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.898878" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.898966" 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-07-28T01:54:42.893178" elapsed="0.005814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.901337" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.899149" elapsed="0.002233"/>
</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-07-28T01:54:42.892798" elapsed="0.008677"/>
</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-07-28T01:54:42.886373" elapsed="0.015160"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.872677" elapsed="0.028900"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.902064" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.901808" 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-07-28T01:54:42.905584" 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-07-28T01:54:42.905717" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.905393" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.906574" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.905955" elapsed="0.000660"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.907220" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.906830" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.907893" 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-07-28T01:54:42.907490" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.908640" 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-07-28T01:54:42.908167" elapsed="0.000510"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.909917" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.908891" elapsed="0.001069"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.910650" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.910181" elapsed="0.000531"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.911360" 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-07-28T01:54:42.910925" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.912094" 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-07-28T01:54:42.911654" elapsed="0.000499"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.912812" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.912363" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.913564" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.913087" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.914280" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.913846" 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-07-28T01:54:42.905062" elapsed="0.009356"/>
</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-07-28T01:54:42.928120" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.928164" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.928255" 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-07-28T01:54:42.922506" elapsed="0.005775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.931260" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.928442" elapsed="0.002881"/>
</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-07-28T01:54:42.922069" elapsed="0.009337"/>
</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-07-28T01:54:42.914651" elapsed="0.016852"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.901676" elapsed="0.029883"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.932235" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.931884" 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-07-28T01:54:42.937278" 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-07-28T01:54:42.937523" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.937088" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.938232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ec540&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.937794" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.938703" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.938411" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.939151" 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-07-28T01:54:42.938884" elapsed="0.000292"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.939637" 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-07-28T01:54:42.939343" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.940670" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.939847" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.941174" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.940859" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.941725" 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-07-28T01:54:42.941367" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.942227" 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-07-28T01:54:42.941917" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.942735" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.942419" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.943233" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.942928" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.943752" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ec540&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.943428" 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-07-28T01:54:42.936614" elapsed="0.007234"/>
</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-07-28T01:54:42.957352" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.957397" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.957534" 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-07-28T01:54:42.950812" elapsed="0.006748"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.959777" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.957717" elapsed="0.002104"/>
</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-07-28T01:54:42.950415" elapsed="0.009467"/>
</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-07-28T01:54:42.943997" elapsed="0.015936"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.931699" elapsed="0.028272"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.960445" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.960197" 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-07-28T01:54:42.964848" 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-07-28T01:54:42.965023" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.964661" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.965931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.965272" elapsed="0.000699"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.966595" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.966184" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.967220" 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-07-28T01:54:42.966843" elapsed="0.000413"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.967867" 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-07-28T01:54:42.967484" elapsed="0.000420"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.969202" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.968115" elapsed="0.001130"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.970007" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.969528" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.970544" 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-07-28T01:54:42.970211" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.971163" 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-07-28T01:54:42.970743" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.971704" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.971365" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.972216" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.971905" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.972745" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.972414" 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-07-28T01:54:42.964176" elapsed="0.008667"/>
</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-07-28T01:54:42.986121" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:42.986203" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:42.986297" 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-07-28T01:54:42.979943" elapsed="0.006381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.988633" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.986519" elapsed="0.002166"/>
</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-07-28T01:54:42.979533" elapsed="0.009214"/>
</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-07-28T01:54:42.972992" elapsed="0.015808"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.960068" elapsed="0.028772"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.989334" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:42.989073" 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-07-28T01:54:42.992861" 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-07-28T01:54:42.992990" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.992727" elapsed="0.000294"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:42.993666" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:42.993174" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.994295" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:42.993859" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.994957" 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-07-28T01:54:42.994572" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:42.995631" 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-07-28T01:54:42.995205" elapsed="0.000463"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:42.996884" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:42.995884" elapsed="0.001044"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.997640" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:42.997151" elapsed="0.000552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.998402" 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-07-28T01:54:42.997949" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.999139" 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-07-28T01:54:42.998697" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:42.999864" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:42.999416" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.000599" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.000144" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.001313" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.000880" elapsed="0.000493"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:42.992374" elapsed="0.009120"/>
</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-07-28T01:54:43.016284" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.016372" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.016490" 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-07-28T01:54:43.009899" elapsed="0.006619"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.019597" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.016677" elapsed="0.002982"/>
</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-07-28T01:54:43.009513" elapsed="0.010231"/>
</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-07-28T01:54:43.001715" elapsed="0.018105"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:54:42.988942" elapsed="0.030930"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.020566" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.020194" 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-07-28T01:54:43.025665" 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-07-28T01:54:43.025847" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.025440" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.026466" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6db20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.026037" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.026979" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.026649" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.027435" 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-07-28T01:54:43.027160" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.027911" 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-07-28T01:54:43.027634" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.028806" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.028089" elapsed="0.000748"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.029317" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.028995" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.029882" 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-07-28T01:54:43.029559" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.030401" 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-07-28T01:54:43.030085" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.030924" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.030612" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.031433" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.031122" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.031964" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6db20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.031651" 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-07-28T01:54:43.024866" elapsed="0.007199"/>
</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-07-28T01:54:43.045534" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.045579" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.045715" 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-07-28T01:54:43.039059" elapsed="0.006683"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.049942" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.045967" elapsed="0.004037"/>
</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-07-28T01:54:43.038676" elapsed="0.011410"/>
</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-07-28T01:54:43.032215" elapsed="0.017943"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.020012" elapsed="0.030200"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.050908" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.050556" 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-07-28T01:54:43.055851" 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-07-28T01:54:43.056034" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.055660" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.056902" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.056290" elapsed="0.000652"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.057636" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.057159" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.058216" 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-07-28T01:54:43.057909" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.058691" 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-07-28T01:54:43.058395" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.059588" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.058870" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.060110" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.059786" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.060643" 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-07-28T01:54:43.060310" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.061154" 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-07-28T01:54:43.060841" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.061711" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.061377" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.062224" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.061913" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.062774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.062441" 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-07-28T01:54:43.055170" elapsed="0.007704"/>
</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-07-28T01:54:43.079820" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.079918" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.080204" 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-07-28T01:54:43.069859" elapsed="0.010404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.085491" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.080648" elapsed="0.004960"/>
</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-07-28T01:54:43.069473" elapsed="0.016268"/>
</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-07-28T01:54:43.063022" elapsed="0.022848"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.050350" elapsed="0.035619"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.087154" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.086576" elapsed="0.000683"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.093254" 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-07-28T01:54:43.093490" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.093063" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.094373" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.093743" elapsed="0.000671"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.095057" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.094660" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.095723" 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-07-28T01:54:43.095315" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.096355" 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-07-28T01:54:43.095975" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.097711" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.096625" elapsed="0.001129"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.098429" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.097981" elapsed="0.000530"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.099176" 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-07-28T01:54:43.098733" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.099926" 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-07-28T01:54:43.099472" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.100650" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.100204" elapsed="0.000511"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.101408" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.100929" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.102133" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.101723" 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-07-28T01:54:43.092581" elapsed="0.009650"/>
</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-07-28T01:54:43.115965" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.116010" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.116100" 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-07-28T01:54:43.109222" elapsed="0.006941"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.118480" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.116327" elapsed="0.002201"/>
</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-07-28T01:54:43.108839" elapsed="0.009751"/>
</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-07-28T01:54:43.102380" elapsed="0.016265"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.086218" elapsed="0.032465"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.119163" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.118916" 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-07-28T01:54:43.123061" 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-07-28T01:54:43.123240" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.122869" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.124113" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edcb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.123518" elapsed="0.000636"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.124796" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.124366" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.125485" 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-07-28T01:54:43.125052" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.126178" 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-07-28T01:54:43.125737" elapsed="0.000477"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.127503" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.126423" elapsed="0.001124"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.128208" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.127765" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.128939" 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-07-28T01:54:43.128504" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.129718" 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-07-28T01:54:43.129215" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.130488" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.130044" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.131196" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.130764" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.131936" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05edcb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.131492" elapsed="0.000504"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.122376" elapsed="0.009696"/>
</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-07-28T01:54:43.145821" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.145871" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.145965" 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-07-28T01:54:43.139598" elapsed="0.006449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.148303" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.146209" 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-07-28T01:54:43.139182" elapsed="0.009222"/>
</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-07-28T01:54:43.132281" elapsed="0.016192"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.118780" elapsed="0.029735"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.149000" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.148747" 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-07-28T01:54:43.152644" 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-07-28T01:54:43.152776" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.152505" elapsed="0.000300"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.153420" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edf80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.152956" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.153939" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.153623" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.154595" 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-07-28T01:54:43.154188" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.155238" 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-07-28T01:54:43.154852" elapsed="0.000422"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.156569" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.155504" elapsed="0.001110"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.157291" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.156835" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.158067" 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-07-28T01:54:43.157629" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.158808" 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-07-28T01:54:43.158340" elapsed="0.000539"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.159561" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.159119" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.160266" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.159836" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.161001" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edf80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.160563" elapsed="0.000498"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.152145" elapsed="0.008993"/>
</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-07-28T01:54:43.175350" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.175395" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.175506" 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-07-28T01:54:43.168379" elapsed="0.007157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.177884" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.175735" elapsed="0.002195"/>
</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-07-28T01:54:43.167997" elapsed="0.009991"/>
</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-07-28T01:54:43.161437" elapsed="0.016602"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.148616" elapsed="0.029461"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.178577" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.178307" elapsed="0.000317"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.182283" 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-07-28T01:54:43.182478" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.182090" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.183300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ede40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.182734" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.183965" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.183578" elapsed="0.000427"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.184626" 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-07-28T01:54:43.184219" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.185261" 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-07-28T01:54:43.184877" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.186518" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.185555" elapsed="0.001009"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.187242" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.186788" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.187979" 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-07-28T01:54:43.187541" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.188723" 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-07-28T01:54:43.188255" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.189471" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.189001" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.190193" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.189756" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.190940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ede40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.190500" elapsed="0.000500"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.181646" elapsed="0.009435"/>
</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-07-28T01:54:43.205325" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.205376" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.205489" 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-07-28T01:54:43.198936" elapsed="0.006581"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.207825" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.205719" elapsed="0.002150"/>
</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-07-28T01:54:43.198542" elapsed="0.009388"/>
</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-07-28T01:54:43.191292" elapsed="0.016692"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.178175" elapsed="0.029847"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.208524" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.208253" elapsed="0.000317"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.213065" 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-07-28T01:54:43.213246" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.212872" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.214192" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.213566" elapsed="0.000668"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.214874" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.214475" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.215537" 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-07-28T01:54:43.215130" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.216176" 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-07-28T01:54:43.215791" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.217507" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.216426" elapsed="0.001127"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.218268" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.217774" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.219004" 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-07-28T01:54:43.218566" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.219739" 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-07-28T01:54:43.219277" elapsed="0.000520"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.220444" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.220020" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.221184" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.220750" elapsed="0.000500"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.221933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.221527" elapsed="0.000448"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.212377" elapsed="0.009653"/>
</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-07-28T01:54:43.235996" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.236042" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.236135" 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-07-28T01:54:43.229029" elapsed="0.007132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.238557" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.236369" elapsed="0.002233"/>
</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-07-28T01:54:43.228629" elapsed="0.010030"/>
</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-07-28T01:54:43.222183" elapsed="0.016528"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.208122" elapsed="0.030626"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.239250" level="INFO">f156.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.238999" 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-07-28T01:54:43.243387" 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-07-28T01:54:43.243597" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.243198" elapsed="0.000441"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.244436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6de90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.243861" elapsed="0.000634"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.245115" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.244708" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.245832" 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-07-28T01:54:43.245410" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.246505" 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-07-28T01:54:43.246092" elapsed="0.000462"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.247733" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:43.246765" elapsed="0.001010"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.248479" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.248007" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.249200" 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-07-28T01:54:43.248755" elapsed="0.000501"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.249982" 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-07-28T01:54:43.249532" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.250716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.250250" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.251429" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:43.250990" elapsed="0.000534"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.252213" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6de90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.251735" elapsed="0.000537"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.242710" elapsed="0.009638"/>
</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-07-28T01:54:43.268211" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.268272" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.268413" 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-07-28T01:54:43.261144" elapsed="0.007304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.271774" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.268760" elapsed="0.003077"/>
</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-07-28T01:54:43.260748" elapsed="0.011169"/>
</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-07-28T01:54:43.252591" elapsed="0.019397"/>
</kw>
<var name="${flowfile}">f156.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.238869" elapsed="0.033170"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.272751" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.272367" 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-07-28T01:54:43.277976" 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-07-28T01:54:43.278168" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.277785" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.279041" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.278418" elapsed="0.000662"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.279716" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.279292" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.280372" 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-07-28T01:54:43.279980" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.281031" 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-07-28T01:54:43.280651" elapsed="0.000415"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.282339" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.281308" elapsed="0.001074"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.283087" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.282630" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.283840" 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-07-28T01:54:43.283373" elapsed="0.000525"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.284594" 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-07-28T01:54:43.284125" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.285358" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.284885" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.286101" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.285666" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.286628" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.286296" 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-07-28T01:54:43.277228" elapsed="0.009506"/>
</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-07-28T01:54:43.299804" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.299851" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.299942" 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-07-28T01:54:43.293819" elapsed="0.006148"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.302303" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.300173" elapsed="0.002174"/>
</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-07-28T01:54:43.293417" elapsed="0.008987"/>
</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-07-28T01:54:43.286883" elapsed="0.015585"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.272188" elapsed="0.030319"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.303001" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.302745" 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-07-28T01:54:43.306880" 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-07-28T01:54:43.307054" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.306695" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.307932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2a20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.307327" elapsed="0.000668"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.308628" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.308222" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.309370" 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-07-28T01:54:43.308906" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.310038" 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-07-28T01:54:43.309643" elapsed="0.000431"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.311273" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.310297" elapsed="0.001018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.312010" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.311554" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.312764" 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-07-28T01:54:43.312296" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.313542" 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-07-28T01:54:43.313057" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.314275" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.313824" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.314997" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.314568" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.315716" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2a20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.315270" elapsed="0.000504"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.306190" elapsed="0.009660"/>
</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-07-28T01:54:43.329495" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.329602" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.329810" 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-07-28T01:54:43.323421" elapsed="0.006457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.335611" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.330289" elapsed="0.005432"/>
</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-07-28T01:54:43.323041" elapsed="0.012845"/>
</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-07-28T01:54:43.316057" elapsed="0.019998"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.302615" elapsed="0.033533"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.337499" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.336755" elapsed="0.000862"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.341246" 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-07-28T01:54:43.341379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.341092" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.341996" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3f60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.341580" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.342481" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.342180" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.342949" 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-07-28T01:54:43.342663" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.343404" 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-07-28T01:54:43.343128" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.344284" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.343599" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.344814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.344491" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.345350" 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-07-28T01:54:43.345019" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.345884" 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-07-28T01:54:43.345565" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.346379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.346078" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.346898" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.346591" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.347404" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3f60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.347095" 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-07-28T01:54:43.340750" elapsed="0.006769"/>
</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-07-28T01:54:43.362370" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.362416" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.362532" 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-07-28T01:54:43.354496" elapsed="0.008062"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.364805" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.362720" elapsed="0.002173"/>
</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-07-28T01:54:43.354099" elapsed="0.010854"/>
</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-07-28T01:54:43.347670" elapsed="0.017336"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.336394" elapsed="0.028650"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.365660" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.365353" elapsed="0.000392"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.370649" 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-07-28T01:54:43.370841" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.370440" elapsed="0.000446"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.371680" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1120&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.371095" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.372360" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.371974" elapsed="0.000421"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.373021" 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-07-28T01:54:43.372627" elapsed="0.000429"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.373746" 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-07-28T01:54:43.373313" elapsed="0.000469"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.375014" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.374007" elapsed="0.001050"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.375798" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.375273" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.376546" 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-07-28T01:54:43.376084" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.377308" 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-07-28T01:54:43.376838" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.378020" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.377596" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.378735" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.378290" elapsed="0.000508"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.379450" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1120&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.379007" elapsed="0.000521"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.369948" elapsed="0.009668"/>
</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-07-28T01:54:43.393681" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.393726" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.393818" 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-07-28T01:54:43.387450" elapsed="0.006399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.396973" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.394107" elapsed="0.002926"/>
</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-07-28T01:54:43.387070" 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-07-28T01:54:43.379824" elapsed="0.017439"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.365144" elapsed="0.032171"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.398005" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.397656" 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-07-28T01:54:43.402900" 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-07-28T01:54:43.403077" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.402712" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.403929" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1b70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.403327" elapsed="0.000642"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.404588" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.404180" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.405260" 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-07-28T01:54:43.404834" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.405946" 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-07-28T01:54:43.405535" elapsed="0.000442"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.406887" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:43.406140" elapsed="0.000777"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.407386" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.407072" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.407900" 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-07-28T01:54:43.407595" elapsed="0.000345"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.408409" 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-07-28T01:54:43.408091" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.408981" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.408651" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.409521" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:43.409178" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.410022" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c1b70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.409717" 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-07-28T01:54:43.402225" elapsed="0.007892"/>
</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-07-28T01:54:43.423339" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.423385" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.423492" 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-07-28T01:54:43.417068" elapsed="0.006452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.426567" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.423677" elapsed="0.002933"/>
</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-07-28T01:54:43.416693" elapsed="0.010054"/>
</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-07-28T01:54:43.410264" elapsed="0.016538"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.397474" elapsed="0.029365"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.427314" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.427066" 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-07-28T01:54:43.431372" 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-07-28T01:54:43.431569" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.431171" elapsed="0.000438"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.432390" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.431817" elapsed="0.000612"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.433045" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.432661" elapsed="0.000420"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.433714" 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-07-28T01:54:43.433310" elapsed="0.000440"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.434352" 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-07-28T01:54:43.433973" elapsed="0.000414"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.435731" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:43.434614" elapsed="0.001161"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.436469" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.435990" elapsed="0.000541"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.437266" 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-07-28T01:54:43.436773" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.437996" 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-07-28T01:54:43.437559" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.438716" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.438263" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.439528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:43.438985" elapsed="0.000621"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.440298" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.439816" elapsed="0.000541"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.430705" elapsed="0.009729"/>
</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-07-28T01:54:43.453563" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.453608" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.453697" 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-07-28T01:54:43.447969" elapsed="0.005753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.456013" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.453876" elapsed="0.002181"/>
</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-07-28T01:54:43.447583" elapsed="0.008531"/>
</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-07-28T01:54:43.440663" elapsed="0.015541"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.426938" elapsed="0.029303"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.456738" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.456489" 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-07-28T01:54:43.460428" 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-07-28T01:54:43.460585" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.460277" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.461234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f01d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.460767" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.461714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.461418" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.462298" 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-07-28T01:54:43.461920" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.462946" 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-07-28T01:54:43.462569" elapsed="0.000429"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.464249" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.463209" elapsed="0.001095"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.465000" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.464543" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.465752" 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-07-28T01:54:43.465295" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.466476" 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-07-28T01:54:43.466022" elapsed="0.000513"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.467195" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.466745" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.467958" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.467500" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.468716" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f01d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.468243" elapsed="0.000532"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.459930" elapsed="0.008931"/>
</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-07-28T01:54:43.483021" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.483067" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.483156" 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-07-28T01:54:43.476564" elapsed="0.006618"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.485483" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.483338" elapsed="0.002190"/>
</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-07-28T01:54:43.476158" elapsed="0.009428"/>
</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-07-28T01:54:43.469121" elapsed="0.016570"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.456340" elapsed="0.029391"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.486239" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.485975" 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-07-28T01:54:43.489831" 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-07-28T01:54:43.490019" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.489697" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.490931" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e76a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.490266" elapsed="0.000705"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.491607" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.491197" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.492231" 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-07-28T01:54:43.491855" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.492873" 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-07-28T01:54:43.492496" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.494086" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.493118" elapsed="0.001012"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.494833" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.494366" elapsed="0.000525"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.495573" 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-07-28T01:54:43.495120" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.496285" 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-07-28T01:54:43.495845" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.497053" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:43.496572" elapsed="0.000550"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.497816" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:43.497361" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.498537" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e76a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.498090" 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-07-28T01:54:43.489329" elapsed="0.009342"/>
</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-07-28T01:54:43.513608" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.513708" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.514001" 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-07-28T01:54:43.506631" elapsed="0.007440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.519243" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.514548" elapsed="0.004761"/>
</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-07-28T01:54:43.506237" elapsed="0.013152"/>
</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-07-28T01:54:43.498877" elapsed="0.020652"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.485830" elapsed="0.033756"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.520308" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.519957" elapsed="0.000463"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.525779" 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-07-28T01:54:43.526006" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:43.525589" elapsed="0.000458"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.526915" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.526311" elapsed="0.000644"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.527629" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.527214" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.528366" 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-07-28T01:54:43.527929" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.529068" 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-07-28T01:54:43.528683" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.530146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.529422" elapsed="0.000754"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.530748" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.530370" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.531331" 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-07-28T01:54:43.530979" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.531925" 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-07-28T01:54:43.531575" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.532477" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:43.532119" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.533025" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.532676" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.533652" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c3600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.533279" 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-07-28T01:54:43.525015" elapsed="0.008735"/>
</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-07-28T01:54:43.546305" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.546350" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.546438" 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-07-28T01:54:43.541313" elapsed="0.005208"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.548812" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.546683" elapsed="0.002173"/>
</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-07-28T01:54:43.540902" elapsed="0.008010"/>
</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-07-28T01:54:43.533896" elapsed="0.015111"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.519772" elapsed="0.029314"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.549636" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.549333" elapsed="0.000351"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.553410" 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-07-28T01:54:43.553552" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:43.553271" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.554416" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2de0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.553775" elapsed="0.000703"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.555137" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.554696" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.555892" 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-07-28T01:54:43.555436" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.556638" 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-07-28T01:54:43.556188" elapsed="0.000486"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.557961" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:43.556933" elapsed="0.001072"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.558688" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.558224" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.559474" 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-07-28T01:54:43.559020" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.560242" 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-07-28T01:54:43.559745" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.561012" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:43.560533" elapsed="0.000542"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.561823" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:43.561310" elapsed="0.000646"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.562766" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2de0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.562194" elapsed="0.000633"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.552868" elapsed="0.010041"/>
</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-07-28T01:54:43.577015" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.577060" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.577169" 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-07-28T01:54:43.571341" elapsed="0.005854"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.579659" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.577395" elapsed="0.002307"/>
</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-07-28T01:54:43.570958" elapsed="0.008802"/>
</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-07-28T01:54:43.563165" elapsed="0.016694"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.549202" elapsed="0.030731"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.580469" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.580200" 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-07-28T01:54:43.584234" 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-07-28T01:54:43.584489" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:43.584095" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.585295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.584676" elapsed="0.000662"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.586069" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.585576" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.586826" 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-07-28T01:54:43.586364" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.587587" 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-07-28T01:54:43.587125" elapsed="0.000498"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.588787" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.587833" elapsed="0.000996"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.589648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.589097" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.590355" 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-07-28T01:54:43.589925" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.591075" 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-07-28T01:54:43.590641" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.591783" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:43.591341" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.592497" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.592054" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.593364" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.592827" elapsed="0.000596"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.583722" elapsed="0.009851"/>
</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-07-28T01:54:43.608073" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.608118" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.608245" 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-07-28T01:54:43.601132" elapsed="0.007141"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.610693" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.608431" elapsed="0.002306"/>
</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-07-28T01:54:43.600689" elapsed="0.010107"/>
</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-07-28T01:54:43.593786" elapsed="0.017061"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.580034" elapsed="0.030889"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.611466" level="INFO">f221.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.611155" elapsed="0.000359"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.615951" 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-07-28T01:54:43.616133" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.615720" elapsed="0.000453"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.617061" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bb00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.616383" elapsed="0.000737"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.617843" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.617379" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.618548" 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-07-28T01:54:43.618094" elapsed="0.000534"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.619289" 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-07-28T01:54:43.618847" elapsed="0.000477"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.620543" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:43.619597" elapsed="0.001034"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.621385" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.620856" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.622225" 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-07-28T01:54:43.621732" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.623061" 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-07-28T01:54:43.622565" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.623828" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:43.623334" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.624646" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:43.624151" elapsed="0.000560"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.625516" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bb00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.624969" elapsed="0.000609"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.615179" elapsed="0.010476"/>
</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-07-28T01:54:43.638375" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.638420" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.638532" 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-07-28T01:54:43.633179" elapsed="0.005379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.640944" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.638754" elapsed="0.002234"/>
</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-07-28T01:54:43.632746" elapsed="0.008300"/>
</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-07-28T01:54:43.625936" elapsed="0.015221"/>
</kw>
<var name="${flowfile}">f221.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.611024" elapsed="0.030205"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.641770" level="INFO">f222.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.641477" elapsed="0.000383"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.645648" 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-07-28T01:54:43.645817" 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-07-28T01:54:43.645509" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.646749" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0090&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.646153" elapsed="0.000637"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.647564" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.647051" elapsed="0.000552"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.648337" 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-07-28T01:54:43.647819" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.649099" 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-07-28T01:54:43.648652" elapsed="0.000487"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.650163" 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-07-28T01:54:43.649352" elapsed="0.000903"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.650995" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.650495" elapsed="0.000608"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.651882" 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-07-28T01:54:43.651320" elapsed="0.000624"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.652715" 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-07-28T01:54:43.652204" elapsed="0.000613"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.653627" 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-07-28T01:54:43.653034" elapsed="0.000662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.654438" 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-07-28T01:54:43.653908" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.655279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0090&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.654742" elapsed="0.000598"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.645119" elapsed="0.010297"/>
</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-07-28T01:54:43.670145" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.670191" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.670321" 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-07-28T01:54:43.663464" elapsed="0.006883"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.672617" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.670524" 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-07-28T01:54:43.663024" elapsed="0.009694"/>
</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-07-28T01:54:43.655695" elapsed="0.017074"/>
</kw>
<var name="${flowfile}">f222.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.641332" elapsed="0.031474"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.673433" level="INFO">f223.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.673136" elapsed="0.000358"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.677224" 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-07-28T01:54:43.677352" 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-07-28T01:54:43.677008" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.678023" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eeb10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.677548" elapsed="0.000565"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.678849" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.678328" elapsed="0.000560"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.679614" 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-07-28T01:54:43.679102" elapsed="0.000552"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.680579" 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-07-28T01:54:43.679867" elapsed="0.000750"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.681682" 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-07-28T01:54:43.680882" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.682531" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.682007" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.683341" 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-07-28T01:54:43.682856" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.684131" 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-07-28T01:54:43.683637" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.684913" 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-07-28T01:54:43.684400" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.685833" 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-07-28T01:54:43.685307" elapsed="0.000708"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.686755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05eeb10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.686231" elapsed="0.000584"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.676667" elapsed="0.010281"/>
</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-07-28T01:54:43.701658" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.701703" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.701800" 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-07-28T01:54:43.695447" elapsed="0.006379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.704093" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.702026" elapsed="0.002110"/>
</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-07-28T01:54:43.695023" elapsed="0.009170"/>
</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-07-28T01:54:43.687162" elapsed="0.017083"/>
</kw>
<var name="${flowfile}">f223.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.672990" elapsed="0.031330"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.704880" level="INFO">f224.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.704573" 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-07-28T01:54:43.708737" 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-07-28T01:54:43.708866" 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-07-28T01:54:43.708600" elapsed="0.000297"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.709551" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.709113" elapsed="0.000469"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.710134" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.709734" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.710834" 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-07-28T01:54:43.710381" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.711633" 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-07-28T01:54:43.711180" elapsed="0.000489"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.712759" 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-07-28T01:54:43.711933" elapsed="0.000870"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.713617" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.713096" elapsed="0.000581"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.714471" 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-07-28T01:54:43.714009" elapsed="0.000523"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.715283" 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-07-28T01:54:43.714796" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.716096" 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-07-28T01:54:43.715619" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.716917" 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-07-28T01:54:43.716419" elapsed="0.000561"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.717800" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.717291" 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-07-28T01:54:43.708185" elapsed="0.009750"/>
</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-07-28T01:54:43.733767" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.733813" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.733960" 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-07-28T01:54:43.726894" elapsed="0.007168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.737170" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.734293" elapsed="0.002938"/>
</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-07-28T01:54:43.726468" elapsed="0.010843"/>
</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-07-28T01:54:43.718190" elapsed="0.019252"/>
</kw>
<var name="${flowfile}">f224.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.704421" elapsed="0.033095"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.738242" level="INFO">f225.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.737836" elapsed="0.000468"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.743526" 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-07-28T01:54:43.743703" 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-07-28T01:54:43.743310" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.744554" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01efce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.744003" elapsed="0.000590"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.745293" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.744857" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.745963" 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-07-28T01:54:43.745617" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.746502" 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-07-28T01:54:43.746178" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.747222" 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-07-28T01:54:43.746679" elapsed="0.000573"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.747776" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.747443" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.748326" 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-07-28T01:54:43.748015" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.748884" 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-07-28T01:54:43.748568" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.749504" 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-07-28T01:54:43.749103" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.750090" 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-07-28T01:54:43.749741" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.750654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01efce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.750289" elapsed="0.000409"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:43.742788" elapsed="0.007964"/>
</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-07-28T01:54:43.763174" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.763218" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.763307" 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-07-28T01:54:43.758169" elapsed="0.005164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.765621" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.763510" elapsed="0.002155"/>
</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-07-28T01:54:43.757786" elapsed="0.007934"/>
</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-07-28T01:54:43.750901" elapsed="0.014870"/>
</kw>
<var name="${flowfile}">f225.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.737656" elapsed="0.028152"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.766518" level="INFO">f550.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.766154" elapsed="0.000427"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:43.771857" 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-07-28T01:54:43.772083" 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-07-28T01:54:43.771666" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:43.772961" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bf60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:43.772340" elapsed="0.000779"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.773811" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:43.773365" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.774284" 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-07-28T01:54:43.774009" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:43.774769" 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-07-28T01:54:43.774490" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:43.775568" 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-07-28T01:54:43.774960" elapsed="0.000638"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.776086" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.775756" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.776616" 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-07-28T01:54:43.776284" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.777170" 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-07-28T01:54:43.776819" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.777711" 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-07-28T01:54:43.777368" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.778249" 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-07-28T01:54:43.777926" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.778787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394bf60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:43.778448" 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-07-28T01:54:43.771128" elapsed="0.007757"/>
</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-07-28T01:54:43.792279" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:43.792342" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:54:43.792509" 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-07-28T01:54:43.786089" elapsed="0.006461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:43.795826" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:43.792772" elapsed="0.003116"/>
</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-07-28T01:54:43.785697" elapsed="0.010272"/>
</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-07-28T01:54:43.779034" elapsed="0.017004"/>
</kw>
<var name="${flowfile}">f550.xml</var>
<status status="PASS" start="2026-07-28T01:54:43.765949" elapsed="0.030142"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:54:42.038598" elapsed="1.757545"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.797166" 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-07-28T01:54:43.796374" elapsed="3.001197"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:46.802780" 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-07-28T01:54:46.798255" elapsed="0.004684"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:46.830986" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=32.890s, table=0, n_packets=15, n_bytes=1182, 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-07-28T01:54:46.803419" elapsed="0.027650"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:54:42.038171" elapsed="4.793069"/>
</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-07-28T01:54:46.843948" 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-07-28T01:54:46.844133" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.843768" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:46.844925" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842f20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:46.844349" elapsed="0.000608"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.845436" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:46.845132" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.845951" 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-07-28T01:54:46.845652" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.846430" 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-07-28T01:54:46.846134" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:46.847308" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:46.846645" elapsed="0.000695"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.847910" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:46.847540" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.848465" 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-07-28T01:54:46.848113" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.849054" 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-07-28T01:54:46.848715" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.849609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.849261" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.850161" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:46.849821" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.850711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842f20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:46.850363" 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-07-28T01:54:46.843375" elapsed="0.007446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.851417" 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-07-28T01:54:46.850982" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.851885" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.851623" elapsed="0.000385"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.860127" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:46.859791" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:46.867976" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:46.868717" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:46.868908" 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-07-28T01:54:46.860302" elapsed="0.008642"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.869431" 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-07-28T01:54:46.869133" elapsed="0.000367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.873051" 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-07-28T01:54:46.869647" elapsed="0.003482"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:46.875877" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-07-28T01:54:46.873250" elapsed="0.002750"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.873212" elapsed="0.002831"/>
</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-07-28T01:54:46.876253" 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-07-28T01:54:46.876619" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:46.876383" elapsed="0.000314"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:46.876360" elapsed="0.000370"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.876777" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:46.878863" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:46.878916" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:46.859440" elapsed="0.019500"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.881233" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.879557" elapsed="0.001722"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.879538" elapsed="0.001763"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.881919" 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-07-28T01:54:46.881464" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.882513" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:46.882127" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:46.882601" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:46.882792" 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-07-28T01:54:46.879180" elapsed="0.003637"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:46.882988" 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-07-28T01:54:46.858810" elapsed="0.024686"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.892254" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:46.891905" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:46.898140" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:46.898409" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:46.898568" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:46.892454" elapsed="0.006152"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.899060" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:46.898781" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.901487" 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-07-28T01:54:46.899274" 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-07-28T01:54:46.904334" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.901623" elapsed="0.002785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.901600" elapsed="0.002843"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:46.908528" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:46.908596" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:46.904700" elapsed="0.003930"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:46.911176" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:46.908787" elapsed="0.002450"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.908747" elapsed="0.002516"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:46.911298" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:46.911532" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:46.911582" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:46.891410" elapsed="0.020204"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.913968" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.912221" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.912202" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.914677" 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-07-28T01:54:46.914202" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.915268" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:46.914884" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:46.915345" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:46.915558" 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-07-28T01:54:46.911855" elapsed="0.003734"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:46.915756" elapsed="0.000461"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:46.890646" elapsed="0.025639"/>
</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-07-28T01:54:46.839833" elapsed="0.076512"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:46.831621" elapsed="0.084885"/>
</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-07-28T01:54:46.928055" 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-07-28T01:54:46.928226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.927895" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:46.928872" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:46.928416" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.929416" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:46.929058" elapsed="0.000385"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.929934" 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-07-28T01:54:46.929622" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:46.930394" 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-07-28T01:54:46.930117" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:46.931249" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:46.930594" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.931810" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:46.931443" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.932343" 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-07-28T01:54:46.932011" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.932898" 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-07-28T01:54:46.932563" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.933420" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.933099" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.934037" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:46.933645" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.934591" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:46.934243" 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-07-28T01:54:46.927546" elapsed="0.007146"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.935241" 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-07-28T01:54:46.934845" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.935696" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:46.935427" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.944038" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:46.943718" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:46.950339" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:46.950964" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:46.951118" 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-07-28T01:54:46.944199" elapsed="0.006955"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.951825" 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-07-28T01:54:46.951436" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.955459" 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-07-28T01:54:46.952100" elapsed="0.003476"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:46.958162" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:54:46.955681" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.955651" elapsed="0.002702"/>
</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-07-28T01:54:46.958589" 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-07-28T01:54:46.958914" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:46.958720" elapsed="0.000260"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:46.958696" elapsed="0.000308"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.959035" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:46.960691" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:46.960736" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:46.943374" elapsed="0.017385"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.962982" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.961309" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.961291" elapsed="0.001759"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.963619" 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-07-28T01:54:46.963198" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.964160" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:46.963808" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:46.964235" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:46.964413" 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-07-28T01:54:46.960976" 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-07-28T01:54:46.964614" 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-07-28T01:54:46.942791" elapsed="0.022278"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.973531" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:46.973152" elapsed="0.000419"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:46.979909" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:46.980144" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:46.980312" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:46.973704" elapsed="0.006637"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.980875" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:46.980555" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.983642" 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-07-28T01:54:46.981066" 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-07-28T01:54:46.986611" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.983873" elapsed="0.002811"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.983852" elapsed="0.002937"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:46.991223" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:46.991289" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:46.986997" elapsed="0.004324"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:46.993544" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:46.991501" elapsed="0.002139"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.991452" elapsed="0.002212"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:46.993698" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:46.993906" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:46.993990" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:46.972732" elapsed="0.021283"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:46.996419" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:46.994649" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:46.994631" elapsed="0.001872"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.997114" 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-07-28T01:54:46.996656" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:46.997765" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:46.997347" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:46.997843" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:46.998024" 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-07-28T01:54:46.994252" elapsed="0.003797"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:46.998248" 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-07-28T01:54:46.972017" elapsed="0.026759"/>
</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-07-28T01:54:46.924109" elapsed="0.074726"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:46.916860" elapsed="0.082103"/>
</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-07-28T01:54:47.011242" 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-07-28T01:54:47.011409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.011018" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.012126" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.011647" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.012652" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.012313" elapsed="0.000400"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.013184" 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-07-28T01:54:47.012869" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.013733" 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-07-28T01:54:47.013398" elapsed="0.000361"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.014838" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.013914" elapsed="0.000955"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.015529" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.015073" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.016198" 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-07-28T01:54:47.015820" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.016796" 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-07-28T01:54:47.016401" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.017381" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.017029" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.017997" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.017634" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.018579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.018198" elapsed="0.000425"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.010643" elapsed="0.008036"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.019260" 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-07-28T01:54:47.018831" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.019799" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.019536" 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-07-28T01:54:47.028263" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.027909" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.033896" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.034564" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.034672" 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-07-28T01:54:47.028426" elapsed="0.006273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.035205" 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-07-28T01:54:47.034906" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.038036" 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-07-28T01:54:47.035396" elapsed="0.002694"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.040198" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.038168" elapsed="0.002135"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.038146" elapsed="0.002193"/>
</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-07-28T01:54:47.040614" 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-07-28T01:54:47.041061" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.040818" elapsed="0.000319"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.040793" elapsed="0.000376"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.041215" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:47.043713" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.043848" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.027585" elapsed="0.016299"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.047383" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.044774" elapsed="0.002674"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.044749" elapsed="0.002753"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.048562" 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-07-28T01:54:47.047771" elapsed="0.000831"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.049297" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.048844" elapsed="0.000480"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.049376" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.049580" 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-07-28T01:54:47.044236" elapsed="0.005370"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.049780" 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-07-28T01:54:47.026903" elapsed="0.023361"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.059631" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.059256" elapsed="0.000405"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.066407" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.066727" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.066874" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.059800" elapsed="0.007110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.067617" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.067185" elapsed="0.000544"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.071510" 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-07-28T01:54:47.067932" elapsed="0.003657"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.074597" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.071693" elapsed="0.002975"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.071665" elapsed="0.003036"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.078859" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.078973" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.074903" elapsed="0.004106"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.081581" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.079120" elapsed="0.002521"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.079094" elapsed="0.002571"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.081700" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:54:47.081918" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.081963" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.058827" elapsed="0.023159"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.084369" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.082726" elapsed="0.001724"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.082706" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.085096" 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-07-28T01:54:47.084645" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.085698" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.085305" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.085789" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:47.085977" 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-07-28T01:54:47.082345" elapsed="0.003660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.086177" elapsed="0.000441"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.058123" elapsed="0.028565"/>
</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-07-28T01:54:47.007001" elapsed="0.079748"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:46.999385" elapsed="0.087495"/>
</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-07-28T01:54:47.098442" 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-07-28T01:54:47.098652" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.098272" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.099335" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843c40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.098864" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.099853" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.099548" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.100322" 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-07-28T01:54:47.100035" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.100859" 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-07-28T01:54:47.100523" elapsed="0.000363"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.102053" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.101040" elapsed="0.001045"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.102638" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.102263" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.103196" 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-07-28T01:54:47.102852" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.103885" 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-07-28T01:54:47.103396" elapsed="0.000532"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.104404" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.104084" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.105010" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.104624" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.105644" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843c40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.105277" elapsed="0.000412"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.097901" elapsed="0.007846"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.106336" 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-07-28T01:54:47.105915" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.106855" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.106585" 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-07-28T01:54:47.115045" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.114708" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.120821" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.121521" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.121637" 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-07-28T01:54:47.115210" elapsed="0.006455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.122262" 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-07-28T01:54:47.121851" elapsed="0.000480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.126084" 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-07-28T01:54:47.122567" elapsed="0.003612"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.128869" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.126316" elapsed="0.002675"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.126282" elapsed="0.002746"/>
</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-07-28T01:54:47.129397" 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-07-28T01:54:47.129815" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.129569" elapsed="0.000327"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.129544" elapsed="0.000392"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.129992" elapsed="0.000024"/>
</return>
<msg time="2026-07-28T01:54:47.131757" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.131835" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.114354" elapsed="0.017507"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.134220" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.132477" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.132444" elapsed="0.001844"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.134940" 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-07-28T01:54:47.134490" elapsed="0.000528"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.135599" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.135184" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.135676" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.135857" 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-07-28T01:54:47.132085" elapsed="0.003797"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.136080" elapsed="0.000455"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.113741" elapsed="0.022863"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.145047" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.144741" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.150758" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.151125" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.151275" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.145243" elapsed="0.006061"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.151788" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.151489" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.154415" 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-07-28T01:54:47.152018" elapsed="0.002494"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.157283" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.154613" elapsed="0.002785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.154587" elapsed="0.002844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.161645" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.161758" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.157688" elapsed="0.004105"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.163824" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.161971" elapsed="0.001909"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.161942" elapsed="0.001961"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.163936" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.164173" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.164218" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.144274" elapsed="0.019967"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.166641" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.164848" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.164830" elapsed="0.001879"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.167298" 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-07-28T01:54:47.166856" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.167934" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.167538" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.168011" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.168273" 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-07-28T01:54:47.164461" elapsed="0.003841"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.168479" 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-07-28T01:54:47.143616" elapsed="0.025365"/>
</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-07-28T01:54:47.094388" elapsed="0.074650"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.087257" elapsed="0.081943"/>
</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-07-28T01:54:47.181024" 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-07-28T01:54:47.181178" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.180877" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.181875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e54e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.181399" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.182429" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.182103" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.182938" 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-07-28T01:54:47.182627" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.183428" 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-07-28T01:54:47.183116" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.184548" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.183660" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.185119" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.184740" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.185706" 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-07-28T01:54:47.185358" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.186340" 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-07-28T01:54:47.185940" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.186883" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.186560" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.187646" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.187206" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.188259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e54e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.187891" 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-07-28T01:54:47.180507" elapsed="0.007857"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.189012" 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-07-28T01:54:47.188535" elapsed="0.000508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.189500" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.189195" elapsed="0.000419"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.198026" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.197678" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.202898" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.203743" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.203896" 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-07-28T01:54:47.198187" elapsed="0.005745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.204562" 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-07-28T01:54:47.204160" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.208315" 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-07-28T01:54:47.204849" elapsed="0.003541"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.211078" elapsed="0.000057"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.208521" elapsed="0.002670"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.208490" elapsed="0.002737"/>
</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-07-28T01:54:47.211432" elapsed="0.000055"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.211798" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.211601" elapsed="0.000273"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.211570" elapsed="0.000348"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.211969" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:47.214338" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.214400" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.197305" elapsed="0.017126"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.216885" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.215241" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.215218" elapsed="0.001735"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.217555" 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-07-28T01:54:47.217116" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.218119" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.217747" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.218197" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.218386" 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-07-28T01:54:47.214812" elapsed="0.003605"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.218597" elapsed="0.000439"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.196660" elapsed="0.022440"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.227339" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.227023" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.233140" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.233421" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.233618" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.227518" elapsed="0.006138"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.234257" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.233893" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.241162" 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-07-28T01:54:47.234564" elapsed="0.006763"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.245158" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.241674" elapsed="0.003545"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.241587" elapsed="0.003694"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.248855" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.248905" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.245541" elapsed="0.003388"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.251024" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.249047" elapsed="0.002037"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.249026" elapsed="0.002083"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.251144" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:54:47.251450" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.251514" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.226618" elapsed="0.024920"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.254224" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.252265" elapsed="0.002006"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.252247" elapsed="0.002046"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.255027" 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-07-28T01:54:47.254505" elapsed="0.000550"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.255782" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.255325" elapsed="0.000484"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.255861" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.256100" 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-07-28T01:54:47.251863" elapsed="0.004264"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.256301" elapsed="0.000551"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.225954" elapsed="0.030984"/>
</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-07-28T01:54:47.176916" elapsed="0.080094"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.169538" elapsed="0.087621"/>
</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-07-28T01:54:47.269855" 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-07-28T01:54:47.270071" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.269685" elapsed="0.000416"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.270753" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef790&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.270271" elapsed="0.000511"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.271321" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.270941" elapsed="0.000410"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.271886" 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-07-28T01:54:47.271576" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.272386" 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-07-28T01:54:47.272085" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.273278" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.272589" elapsed="0.000722"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.273914" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.273539" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.274544" 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-07-28T01:54:47.274139" elapsed="0.000456"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.275109" 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-07-28T01:54:47.274761" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.275682" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.275309" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.276492" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.275913" elapsed="0.000658"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.277308" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef790&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.276806" elapsed="0.000566"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.269268" elapsed="0.008226"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.278376" 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-07-28T01:54:47.277753" elapsed="0.000675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.279075" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.278692" 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-07-28T01:54:47.287685" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.287310" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.294026" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.294824" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.295004" 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-07-28T01:54:47.287908" elapsed="0.007124"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.295509" 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-07-28T01:54:47.295201" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.299181" 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-07-28T01:54:47.295723" elapsed="0.003549"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.302095" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.299392" elapsed="0.002812"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.299359" elapsed="0.002892"/>
</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-07-28T01:54:47.302528" elapsed="0.000039"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.302879" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.302683" elapsed="0.000276"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.302657" elapsed="0.000343"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.303061" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.305423" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.305490" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.286949" elapsed="0.018567"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.307826" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.306121" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.306102" elapsed="0.001813"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.308610" 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-07-28T01:54:47.308086" elapsed="0.000552"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.309226" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.308820" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.309305" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:47.309516" 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-07-28T01:54:47.305774" elapsed="0.003775"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.309734" 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-07-28T01:54:47.286309" elapsed="0.023924"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.318872" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.318553" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.325586" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.325909" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.326069" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.319033" elapsed="0.007071"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.326914" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.326414" elapsed="0.000583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.330744" 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-07-28T01:54:47.327219" elapsed="0.003696"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.333659" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.331035" elapsed="0.002679"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.331001" elapsed="0.002738"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.337037" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.337084" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.333959" elapsed="0.003183"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.341876" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.337228" elapsed="0.004715"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.337208" elapsed="0.004762"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.342048" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:47.342292" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.342336" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.318107" elapsed="0.024252"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.344845" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.343053" elapsed="0.001839"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.343034" elapsed="0.001881"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.345645" 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-07-28T01:54:47.345074" elapsed="0.000606"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.346284" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.345899" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.346369" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:47.346635" 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-07-28T01:54:47.342684" elapsed="0.003985"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.346848" elapsed="0.000532"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.317365" elapsed="0.030087"/>
</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-07-28T01:54:47.265334" elapsed="0.082204"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.257568" elapsed="0.090110"/>
</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-07-28T01:54:47.360437" 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-07-28T01:54:47.360710" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.360219" elapsed="0.000534"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.361739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.361025" elapsed="0.000758"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.362556" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.362049" elapsed="0.000548"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.363308" 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-07-28T01:54:47.362860" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.364057" 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-07-28T01:54:47.363606" elapsed="0.000498"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.365680" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.364341" elapsed="0.001396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.366388" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.365994" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.367020" 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-07-28T01:54:47.366687" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.367582" 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-07-28T01:54:47.367225" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.368115" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.367791" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.368700" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.368323" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.369306" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.368917" elapsed="0.000435"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.359717" elapsed="0.009699"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.370057" 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-07-28T01:54:47.369607" elapsed="0.000489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.370543" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.370266" 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-07-28T01:54:47.379308" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.378959" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.385769" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.387131" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.387392" 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-07-28T01:54:47.379505" elapsed="0.007954"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.388571" 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-07-28T01:54:47.387898" elapsed="0.000789"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.394514" 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-07-28T01:54:47.389032" elapsed="0.005555"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.396654" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.394698" elapsed="0.002114"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.394668" elapsed="0.002176"/>
</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-07-28T01:54:47.397047" 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-07-28T01:54:47.397306" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.397163" elapsed="0.000197"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.397145" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.397419" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:47.399309" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.399377" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.378603" elapsed="0.020808"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.402160" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.400206" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.400186" elapsed="0.002055"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.402935" 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-07-28T01:54:47.402406" elapsed="0.000565"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.403573" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.403160" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.403653" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:47.403853" 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-07-28T01:54:47.399790" elapsed="0.004089"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.404092" elapsed="0.000502"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.377939" elapsed="0.026727"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.413605" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.413210" elapsed="0.000425"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.419747" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.420028" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.420197" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.413785" elapsed="0.006459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.420970" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.420561" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.425111" 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-07-28T01:54:47.421246" elapsed="0.003941"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.427866" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.425316" elapsed="0.002607"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.425280" elapsed="0.002669"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.430982" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.431031" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.428107" elapsed="0.002953"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.433004" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.431152" elapsed="0.001912"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.431131" elapsed="0.001958"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.433199" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:54:47.433483" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.433532" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.412715" elapsed="0.020841"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.435872" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.434188" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.434166" elapsed="0.001779"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.436637" 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-07-28T01:54:47.436134" elapsed="0.000531"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.437242" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.436849" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.437332" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:47.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-07-28T01:54:47.433827" elapsed="0.003753"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.437772" 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-07-28T01:54:47.411927" elapsed="0.026407"/>
</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-07-28T01:54:47.355439" elapsed="0.082968"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.348075" elapsed="0.090509"/>
</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-07-28T01:54:47.450357" 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-07-28T01:54:47.450614" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.450172" elapsed="0.000476"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.451322" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06992b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.450823" elapsed="0.000528"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.451843" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.451535" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.452328" 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-07-28T01:54:47.452035" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.452834" 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-07-28T01:54:47.452539" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.454188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.453027" elapsed="0.001194"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.454837" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.454414" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.455411" 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-07-28T01:54:47.455053" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.456008" 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-07-28T01:54:47.455645" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.456578" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.456227" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.457123" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.456784" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.457776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06992b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.457403" elapsed="0.000418"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.449781" elapsed="0.008099"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.458464" 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-07-28T01:54:47.458036" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.459002" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.458733" 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-07-28T01:54:47.467889" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.467544" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.477392" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.479187" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.479634" 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-07-28T01:54:47.468067" elapsed="0.011638"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.481373" 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-07-28T01:54:47.480379" elapsed="0.001146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.486078" 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-07-28T01:54:47.481966" elapsed="0.004211"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.488326" elapsed="0.000083"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.486278" elapsed="0.002206"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.486249" elapsed="0.002267"/>
</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-07-28T01:54:47.488679" 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-07-28T01:54:47.488972" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.488818" elapsed="0.000209"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.488801" elapsed="0.000250"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.489126" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:47.490995" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.491044" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.467143" elapsed="0.023925"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.493803" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.491981" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.491960" elapsed="0.001918"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.494615" 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-07-28T01:54:47.494053" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.495281" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.494812" elapsed="0.000499"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.495362" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:54:47.495611" 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-07-28T01:54:47.491555" 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-07-28T01:54:47.495851" elapsed="0.000471"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.466404" elapsed="0.029991"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.505248" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.504866" elapsed="0.000409"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.511994" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.512156" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.512323" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.505479" elapsed="0.006876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.512867" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.512547" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.515323" 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-07-28T01:54:47.513065" elapsed="0.002310"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.518191" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.515446" elapsed="0.002863"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.515428" elapsed="0.002918"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.523205" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.523280" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.518586" elapsed="0.004728"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.525635" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.523427" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.523399" elapsed="0.002322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.525765" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.526009" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.526054" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.504401" elapsed="0.021675"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.528583" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.526750" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.526729" elapsed="0.001935"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.529290" 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-07-28T01:54:47.528821" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.529998" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.529582" elapsed="0.000444"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.530077" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.530313" 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-07-28T01:54:47.526337" elapsed="0.004004"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.530550" elapsed="0.000457"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.503648" elapsed="0.027464"/>
</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-07-28T01:54:47.446212" elapsed="0.084970"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.438817" elapsed="0.092507"/>
</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-07-28T01:54:47.543675" 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-07-28T01:54:47.543844" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.543464" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.544643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ab60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.544109" elapsed="0.000563"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.545193" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.544842" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.545732" 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-07-28T01:54:47.545416" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.546254" 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-07-28T01:54:47.545929" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.547520" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.546435" elapsed="0.001118"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.548175" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.547728" elapsed="0.000493"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.548786" 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-07-28T01:54:47.548378" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.549374" 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-07-28T01:54:47.548987" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.550016" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.549632" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.550569" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.550222" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.551153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394ab60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.550819" 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-07-28T01:54:47.543067" elapsed="0.008186"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.551872" 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-07-28T01:54:47.551404" elapsed="0.000578"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.552526" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.552159" elapsed="0.000442"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.561309" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.560940" elapsed="0.000397"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.566585" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.567194" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.567304" 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-07-28T01:54:47.561562" elapsed="0.005768"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.567835" 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-07-28T01:54:47.567523" elapsed="0.000399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.570859" 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-07-28T01:54:47.568081" elapsed="0.002835"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.572996" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.570997" elapsed="0.002190"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.570976" elapsed="0.002252"/>
</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-07-28T01:54:47.573435" elapsed="0.000055"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.573804" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.573607" elapsed="0.000336"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.573582" elapsed="0.000399"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.574028" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:47.576679" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.576747" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.560562" elapsed="0.016268"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.580612" elapsed="0.000061"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.577778" elapsed="0.002942"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.577750" elapsed="0.003002"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.581570" 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-07-28T01:54:47.581070" elapsed="0.000566"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.582237" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.581817" elapsed="0.000481"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.582352" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:47.582612" 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-07-28T01:54:47.577151" elapsed="0.005488"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.582802" elapsed="0.000452"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.559898" elapsed="0.023466"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.591860" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.591550" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.597809" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.598016" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.598181" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.592066" elapsed="0.006151"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.598950" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.598526" elapsed="0.000491"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.602399" 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-07-28T01:54:47.599222" 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-07-28T01:54:47.605405" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.602650" elapsed="0.002845"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.602623" elapsed="0.002908"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.608797" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.608844" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.605778" elapsed="0.003088"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.610892" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.608945" elapsed="0.002004"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.608926" elapsed="0.002048"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.611011" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.611211" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.611256" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.591085" elapsed="0.020230"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.613750" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.611941" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.611923" elapsed="0.001896"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.614483" 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-07-28T01:54:47.614012" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.615082" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.614720" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.615161" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.615388" 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-07-28T01:54:47.611558" elapsed="0.003857"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.615636" elapsed="0.000441"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.590444" elapsed="0.025700"/>
</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-07-28T01:54:47.539424" elapsed="0.076780"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.531721" elapsed="0.084599"/>
</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-07-28T01:54:47.628530" 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-07-28T01:54:47.628665" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.628368" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.629361" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.628888" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.629947" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.629655" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.630456" 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-07-28T01:54:47.630172" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.630972" 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-07-28T01:54:47.630653" elapsed="0.000345"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.631993" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.631153" elapsed="0.000874"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.632585" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.632190" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.633173" 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-07-28T01:54:47.632791" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.633803" 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-07-28T01:54:47.633373" elapsed="0.000475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.634368" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.634007" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.634915" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.634588" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.635535" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.635115" elapsed="0.000466"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.627989" elapsed="0.007650"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.636262" 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-07-28T01:54:47.635804" elapsed="0.000489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.636779" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.636456" elapsed="0.000424"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.645614" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.645242" elapsed="0.000440"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.651500" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.652062" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.652228" 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-07-28T01:54:47.645870" elapsed="0.006389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.652763" 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-07-28T01:54:47.652424" elapsed="0.000387"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.656034" 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-07-28T01:54:47.653008" elapsed="0.003103"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.659141" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.656267" elapsed="0.002984"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.656239" elapsed="0.003048"/>
</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-07-28T01:54:47.659580" elapsed="0.000036"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.659926" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.659717" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.659694" elapsed="0.000348"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.660087" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:47.662751" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.662869" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.644867" elapsed="0.018041"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.665438" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.663613" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.663593" elapsed="0.001943"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.666338" 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-07-28T01:54:47.665688" elapsed="0.000679"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.667024" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.666630" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.667112" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:47.667343" 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-07-28T01:54:47.663196" elapsed="0.004172"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.667561" elapsed="0.000456"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.644215" elapsed="0.023871"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.677133" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.676764" elapsed="0.000397"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.682999" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.683222" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.683324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.677305" elapsed="0.006045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.683800" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.683540" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.686040" 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-07-28T01:54:47.683993" elapsed="0.002099"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.688500" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.686161" elapsed="0.002411"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.686142" elapsed="0.002462"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.692635" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.692699" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.688805" elapsed="0.003927"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.695433" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.692841" elapsed="0.002680"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.692815" elapsed="0.002773"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.695624" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.695825" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.695868" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.676306" 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-07-28T01:54:47.698258" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.696523" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.696503" elapsed="0.001822"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.699031" 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-07-28T01:54:47.698548" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.699667" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.699227" elapsed="0.000467"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.699745" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:47.699988" 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-07-28T01:54:47.696149" elapsed="0.003869"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.700184" elapsed="0.000468"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.675614" elapsed="0.025105"/>
</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-07-28T01:54:47.624406" elapsed="0.076372"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.616672" elapsed="0.084274"/>
</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-07-28T01:54:47.713293" 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-07-28T01:54:47.713435" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.713148" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.714157" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.713681" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.714744" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.714385" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.715297" 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-07-28T01:54:47.715011" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.715866" 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-07-28T01:54:47.715541" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.716905" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.716051" elapsed="0.000885"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.717563" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.717156" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.718182" 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-07-28T01:54:47.717806" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.718792" 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-07-28T01:54:47.718384" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.719485" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.719100" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.720072" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.719697" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.720682" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.720275" elapsed="0.000451"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.712716" elapsed="0.008109"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.721439" 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-07-28T01:54:47.720991" elapsed="0.000497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.721991" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.721685" 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-07-28T01:54:47.731072" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.730712" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.738723" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.739596" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.739858" 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-07-28T01:54:47.731262" elapsed="0.008635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.740649" 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-07-28T01:54:47.740138" elapsed="0.000576"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.744871" 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-07-28T01:54:47.740987" elapsed="0.003958"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.747894" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.745105" elapsed="0.002891"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.745072" elapsed="0.002959"/>
</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-07-28T01:54:47.748300" 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-07-28T01:54:47.748706" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.748435" elapsed="0.000363"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.748411" elapsed="0.000422"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.748879" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:47.751449" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.751659" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.730320" elapsed="0.021376"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.754216" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.752438" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.752419" elapsed="0.001905"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.754961" 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-07-28T01:54:47.754499" elapsed="0.000527"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.755652" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.755193" elapsed="0.000488"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.755732" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.755962" 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-07-28T01:54:47.752087" elapsed="0.003901"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.756161" 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-07-28T01:54:47.729652" elapsed="0.027041"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.765541" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.765159" elapsed="0.000453"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.771018" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.771211" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.771324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.765749" elapsed="0.005602"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.771873" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.771536" elapsed="0.000384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.774612" 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-07-28T01:54:47.772112" elapsed="0.002600"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.776934" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.774828" elapsed="0.002180"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.774807" elapsed="0.002240"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.781741" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.781857" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.777265" elapsed="0.004640"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.784901" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.782019" elapsed="0.002982"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.781992" elapsed="0.003043"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.785074" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:47.785316" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.785370" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.764721" elapsed="0.020674"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.787839" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.786068" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.786049" elapsed="0.001857"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.788599" 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-07-28T01:54:47.788157" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.789257" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.788835" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.789334" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.789576" 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-07-28T01:54:47.785667" elapsed="0.003936"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.789814" elapsed="0.000445"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.764008" elapsed="0.026317"/>
</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-07-28T01:54:47.708923" elapsed="0.081473"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.701231" elapsed="0.089334"/>
</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-07-28T01:54:47.802877" 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-07-28T01:54:47.803014" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.802733" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.803758" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c03b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.803245" elapsed="0.000542"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.804289" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.803944" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.804863" 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-07-28T01:54:47.804568" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.805420" 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-07-28T01:54:47.805090" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.808377" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.805619" elapsed="0.002794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.809030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.808685" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.809725" 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-07-28T01:54:47.809321" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.810311" 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-07-28T01:54:47.809969" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.810955" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.810574" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.811587" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.811171" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.812228" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c03b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.811841" elapsed="0.000431"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.802316" elapsed="0.010054"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.813050" 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-07-28T01:54:47.812583" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.813602" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.813290" elapsed="0.000383"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.822554" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.822176" elapsed="0.000406"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.827959" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.828554" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.828669" 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-07-28T01:54:47.822724" elapsed="0.006009"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.829254" 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-07-28T01:54:47.828952" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.832129" 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-07-28T01:54:47.829511" elapsed="0.002672"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.834629" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.832339" elapsed="0.002390"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.832316" 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-07-28T01:54:47.835019" 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-07-28T01:54:47.835360" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.835166" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.835140" elapsed="0.000358"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.835599" elapsed="0.000024"/>
</return>
<msg time="2026-07-28T01:54:47.838270" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.838336" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.821807" elapsed="0.016572"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.842007" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.839312" elapsed="0.002757"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.839286" elapsed="0.002808"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.842775" 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-07-28T01:54:47.842285" elapsed="0.000517"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.843381" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.842968" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.843484" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:47.843715" 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-07-28T01:54:47.838764" elapsed="0.004978"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.843916" elapsed="0.000444"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.821122" elapsed="0.023305"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.853432" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.853036" elapsed="0.000424"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.858636" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.859051" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.859302" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.853619" elapsed="0.005745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.860549" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.859836" elapsed="0.000840"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.867161" 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-07-28T01:54:47.861041" elapsed="0.006242"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.870807" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.867507" elapsed="0.003362"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.867416" elapsed="0.003477"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.873758" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.873805" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.871040" elapsed="0.002788"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.875675" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.873909" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.873889" elapsed="0.001917"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.875841" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.876053" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.876098" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.852594" elapsed="0.023528"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.878421" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.876725" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.876706" elapsed="0.001803"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.879091" 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-07-28T01:54:47.878675" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.879683" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.879288" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.879762" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.879945" 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-07-28T01:54:47.876347" elapsed="0.003630"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.880150" 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-07-28T01:54:47.851849" elapsed="0.028791"/>
</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-07-28T01:54:47.798629" elapsed="0.082067"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.790832" elapsed="0.089980"/>
</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-07-28T01:54:47.892311" 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-07-28T01:54:47.892449" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.892169" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.893086" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.892660" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.893586" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.893279" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.894112" 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-07-28T01:54:47.893817" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.894605" 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-07-28T01:54:47.894295" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.895692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:47.894796" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.896247" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.895887" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.896812" 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-07-28T01:54:47.896450" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.897368" 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-07-28T01:54:47.897025" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.897942" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.897588" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.898580" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:47.898196" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.899134" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.898789" 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-07-28T01:54:47.891816" elapsed="0.007417"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.899812" 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-07-28T01:54:47.899385" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.900264" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:47.900008" 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-07-28T01:54:47.908704" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.908343" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.913631" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.914233" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.914338" 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-07-28T01:54:47.908866" elapsed="0.005497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.914842" 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-07-28T01:54:47.914583" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.917619" 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-07-28T01:54:47.915071" elapsed="0.002638"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.919775" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.917783" elapsed="0.002102"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.917764" elapsed="0.002146"/>
</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-07-28T01:54:47.920064" elapsed="0.000058"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.920333" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.920196" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.920179" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.920438" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:47.922275" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:47.922320" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.907983" elapsed="0.014360"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.924836" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.923022" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.923003" elapsed="0.001902"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.925515" 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-07-28T01:54:47.925054" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.926056" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.925704" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.926131" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.926347" 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-07-28T01:54:47.922651" elapsed="0.003722"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.926548" 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-07-28T01:54:47.907369" elapsed="0.019633"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.934856" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.934556" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.939719" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.940046" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:47.940158" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:47.935013" elapsed="0.005171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.940620" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:47.940347" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.942881" 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-07-28T01:54:47.940811" elapsed="0.002122"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.945495" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.943011" elapsed="0.002553"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.942984" elapsed="0.002612"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.949400" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:47.949484" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:47.945793" elapsed="0.003726"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.951816" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.949627" elapsed="0.002244"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.949601" elapsed="0.002294"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:47.951927" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:47.952122" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:47.952165" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:47.934127" elapsed="0.018060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.954384" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:47.952752" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.952734" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.955050" 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-07-28T01:54:47.954619" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.955655" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:47.955277" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:47.955732" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:47.955914" 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-07-28T01:54:47.952401" elapsed="0.003538"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:47.956102" 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-07-28T01:54:47.933480" elapsed="0.023090"/>
</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-07-28T01:54:47.888415" elapsed="0.068212"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.881342" elapsed="0.075397"/>
</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-07-28T01:54:47.967738" 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-07-28T01:54:47.967911" 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-07-28T01:54:47.967597" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:47.968629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:47.968094" elapsed="0.000564"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.969140" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:47.968814" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.969649" 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-07-28T01:54:47.969357" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:47.970180" 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-07-28T01:54:47.969868" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:47.971341" 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-07-28T01:54:47.970394" elapsed="0.000978"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.971964" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.971589" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.972580" 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-07-28T01:54:47.972198" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.973149" 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-07-28T01:54:47.972781" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.973768" 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-07-28T01:54:47.973391" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.974360" 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-07-28T01:54:47.974002" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.975010" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:47.974576" elapsed="0.000478"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:47.967155" elapsed="0.007955"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.975747" 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-07-28T01:54:47.975261" elapsed="0.000551"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.976252" 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-07-28T01:54:47.975967" elapsed="0.000386"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.984812" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:47.984447" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:47.990342" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:47.990925" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:47.991035" 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-07-28T01:54:47.984970" elapsed="0.006091"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.991581" 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-07-28T01:54:47.991304" elapsed="0.000389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:47.995612" 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-07-28T01:54:47.991840" elapsed="0.003848"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:47.998531" elapsed="0.000089"/>
</return>
<status status="PASS" start="2026-07-28T01:54:47.995787" elapsed="0.002888"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:47.995760" elapsed="0.002950"/>
</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-07-28T01:54:47.998912" elapsed="0.000080"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:47.999289" elapsed="0.000148"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:47.999093" elapsed="0.000410"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:47.999069" elapsed="0.000468"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:47.999582" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.001528" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.001608" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:47.984094" elapsed="0.017541"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.003955" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.002216" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.002198" elapsed="0.001860"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.004666" 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-07-28T01:54:48.004208" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.005291" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.004897" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.005400" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:48.005645" 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-07-28T01:54:48.001848" elapsed="0.003824"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.005865" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:47.983446" elapsed="0.022914"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.014795" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.014438" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.021250" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.021445" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.021578" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.014987" elapsed="0.006617"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.022097" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.021803" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.024867" 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-07-28T01:54:48.022286" elapsed="0.002655"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.027742" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.025038" elapsed="0.002773"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.025012" elapsed="0.002831"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.032124" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.032187" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.028091" elapsed="0.004127"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.034434" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.032325" elapsed="0.002182"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.032300" elapsed="0.002232"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.034565" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:54:48.034800" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.034843" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.014022" elapsed="0.020843"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.037227" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.035505" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.035485" elapsed="0.001808"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.037945" 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-07-28T01:54:48.037496" elapsed="0.000514"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.038606" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.038176" elapsed="0.000460"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.038697" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:48.038922" 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-07-28T01:54:48.035121" 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-07-28T01:54:48.039179" elapsed="0.000462"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.013347" elapsed="0.026405"/>
</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-07-28T01:54:47.963874" elapsed="0.075940"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:47.956988" elapsed="0.082973"/>
</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-07-28T01:54:48.052649" 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-07-28T01:54:48.052789" 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-07-28T01:54:48.052500" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.053492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e54e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.053015" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.054007" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.053680" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.054519" 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-07-28T01:54:48.054192" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.055014" 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-07-28T01:54:48.054703" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.056099" 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-07-28T01:54:48.055194" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.056776" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.056380" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.057341" 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-07-28T01:54:48.056977" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.057923" 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-07-28T01:54:48.057553" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.058532" 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-07-28T01:54:48.058161" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.059096" 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-07-28T01:54:48.058736" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.059686" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e54e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.059293" elapsed="0.000437"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.052072" elapsed="0.007714"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.060394" 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-07-28T01:54:48.059939" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.060885" 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-07-28T01:54:48.060639" elapsed="0.000400"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.069335" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.069031" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.074415" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.075023" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.075128" 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-07-28T01:54:48.069543" elapsed="0.005611"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.075665" 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-07-28T01:54:48.075352" elapsed="0.000359"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.078466" 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-07-28T01:54:48.075854" elapsed="0.002681"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.080645" elapsed="0.000079"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.078606" elapsed="0.002161"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.078587" elapsed="0.002206"/>
</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-07-28T01:54:48.080941" 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-07-28T01:54:48.081321" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.081131" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.081107" elapsed="0.000382"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.081537" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.084107" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.084215" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.068679" elapsed="0.015572"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.087674" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.085153" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.085128" elapsed="0.002639"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.088644" 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-07-28T01:54:48.088020" elapsed="0.000663"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.089399" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.088949" elapsed="0.000535"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.089538" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.089721" 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-07-28T01:54:48.084641" elapsed="0.005104"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.089902" elapsed="0.000459"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.067993" elapsed="0.022438"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.099228" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.098929" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.104601" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.104879" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.104997" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.099383" elapsed="0.005640"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.105529" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.105181" elapsed="0.000399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.108817" 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-07-28T01:54:48.105724" elapsed="0.003235"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.111925" elapsed="0.000070"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.109060" elapsed="0.002988"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.109033" elapsed="0.003048"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.115756" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.115802" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.112280" elapsed="0.003546"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.117845" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.115906" elapsed="0.001996"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.115887" elapsed="0.002039"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.117992" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:48.118195" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.118238" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.098509" elapsed="0.019751"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.120702" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.118905" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.118887" elapsed="0.001883"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.121460" 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-07-28T01:54:48.120958" elapsed="0.000548"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.122114" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.121713" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.122191" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.122413" 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-07-28T01:54:48.118531" elapsed="0.003908"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.122618" elapsed="0.000464"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.097760" elapsed="0.025387"/>
</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-07-28T01:54:48.048517" elapsed="0.074687"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.040254" elapsed="0.083063"/>
</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-07-28T01:54:48.135426" 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-07-28T01:54:48.135612" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.135285" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.136271" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.135799" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.136841" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.136512" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.137401" 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-07-28T01:54:48.137063" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.137920" 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-07-28T01:54:48.137600" elapsed="0.000346"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.138987" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.138100" elapsed="0.000918"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.139580" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.139213" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.140206" 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-07-28T01:54:48.139825" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.140832" 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-07-28T01:54:48.140441" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.141447" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.141066" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.142034" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.141668" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.142648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.142272" elapsed="0.000418"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.134912" elapsed="0.007834"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.143355" 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-07-28T01:54:48.142934" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.143841" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.143556" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.152420" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.152080" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.157557" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.158116" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.158234" 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-07-28T01:54:48.152594" elapsed="0.005666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.158769" 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-07-28T01:54:48.158508" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.161505" 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-07-28T01:54:48.159001" elapsed="0.002556"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.164318" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.161627" elapsed="0.002784"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.161608" elapsed="0.002838"/>
</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-07-28T01:54:48.164710" 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-07-28T01:54:48.165074" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.164841" elapsed="0.000307"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.164818" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.165225" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:48.167796" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.167858" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.151674" elapsed="0.016215"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.171219" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.168773" elapsed="0.002491"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.168747" elapsed="0.002539"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.171935" 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-07-28T01:54:48.171433" elapsed="0.000530"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.172538" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.172129" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.172614" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.172833" 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-07-28T01:54:48.168238" elapsed="0.004621"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.173017" elapsed="0.000472"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.151063" elapsed="0.022494"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.182167" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.181810" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.188423" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.188935" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.189093" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.182361" elapsed="0.006816"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.189834" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.189403" elapsed="0.000543"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.193425" 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-07-28T01:54:48.190240" elapsed="0.003386"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.196620" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.193730" elapsed="0.002960"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.193703" elapsed="0.003019"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.201409" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.201499" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.196967" elapsed="0.004567"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.203934" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.201645" elapsed="0.002345"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.201618" elapsed="0.002396"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.204047" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:54:48.204284" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.204327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.181381" elapsed="0.022968"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.206823" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.204985" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.204967" elapsed="0.001922"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.207547" 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-07-28T01:54:48.207081" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.208168" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.207774" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.208244" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.208492" 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-07-28T01:54:48.204614" elapsed="0.003908"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.208681" 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-07-28T01:54:48.180687" elapsed="0.028527"/>
</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-07-28T01:54:48.131228" elapsed="0.078042"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.123558" elapsed="0.085825"/>
</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-07-28T01:54:48.221283" 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-07-28T01:54:48.221418" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.221110" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.222078" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a3e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.221651" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.222630" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.222277" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.223155" 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-07-28T01:54:48.222846" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.223660" 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-07-28T01:54:48.223334" elapsed="0.000353"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.224648" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.223837" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.225244" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.224876" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.225863" 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-07-28T01:54:48.225497" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.226425" 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-07-28T01:54:48.226060" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.227032" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.226712" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.227610" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.227230" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.228234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a3e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.227848" elapsed="0.000429"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.220778" elapsed="0.007555"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.229000" 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-07-28T01:54:48.228564" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.229461" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.229216" 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-07-28T01:54:48.238078" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.237731" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.243271" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.243901" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.244098" 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-07-28T01:54:48.238271" elapsed="0.005869"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.244846" 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-07-28T01:54:48.244364" elapsed="0.000549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.248892" 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-07-28T01:54:48.245166" elapsed="0.003844"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.251955" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.249112" elapsed="0.002948"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.249085" elapsed="0.003004"/>
</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-07-28T01:54:48.252268" 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-07-28T01:54:48.252546" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.252360" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.252345" elapsed="0.000315"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.252692" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:48.254450" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.254511" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.237339" elapsed="0.017230"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.256876" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.255190" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.255172" elapsed="0.001770"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.257554" 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-07-28T01:54:48.257094" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.258143" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.257742" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.258218" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.258396" 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-07-28T01:54:48.254788" elapsed="0.003634"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.258596" 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-07-28T01:54:48.236744" elapsed="0.022370"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.267794" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.267439" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.273318" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.273689" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.273805" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.267989" elapsed="0.005842"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.274290" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.274034" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.277218" 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-07-28T01:54:48.274536" elapsed="0.002804"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.280316" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.277438" elapsed="0.002946"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.277412" elapsed="0.003003"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.284446" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.284509" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.280687" 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-07-28T01:54:48.286496" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.284610" elapsed="0.001959"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.284591" elapsed="0.002049"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.286676" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.286895" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.286977" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.266978" elapsed="0.020025"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.289423" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.287656" elapsed="0.001832"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.287638" elapsed="0.001881"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.290153" 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-07-28T01:54:48.289671" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.290867" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.290403" elapsed="0.000492"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.290947" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.291129" 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-07-28T01:54:48.287256" elapsed="0.003898"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.291368" elapsed="0.000509"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.266268" elapsed="0.025674"/>
</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-07-28T01:54:48.217122" elapsed="0.074875"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.209609" elapsed="0.082537"/>
</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-07-28T01:54:48.303992" 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-07-28T01:54:48.304184" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.303849" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.304939" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03297b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.304370" elapsed="0.000598"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.305510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.305165" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.306048" 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-07-28T01:54:48.305694" elapsed="0.000380"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.306565" 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-07-28T01:54:48.306266" elapsed="0.000361"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.309572" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.306784" elapsed="0.002821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.310143" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.309768" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.310728" 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-07-28T01:54:48.310342" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.311332" 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-07-28T01:54:48.310964" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.311947" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.311558" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.312532" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.312148" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.313103" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03297b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.312733" elapsed="0.000453"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.303437" elapsed="0.009844"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.313944" 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-07-28T01:54:48.313433" elapsed="0.000542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.314413" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.314125" 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-07-28T01:54:48.322972" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.322670" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.329419" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.330041" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.330156" 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-07-28T01:54:48.323167" elapsed="0.007015"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.330656" 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-07-28T01:54:48.330379" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.333776" 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-07-28T01:54:48.330887" elapsed="0.003013"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.336871" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.334005" elapsed="0.002959"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.333976" elapsed="0.003024"/>
</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-07-28T01:54:48.337243" 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-07-28T01:54:48.337629" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.337372" elapsed="0.000334"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.337349" elapsed="0.000389"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.337782" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:48.340422" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.340514" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.322294" elapsed="0.018257"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.343070" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.341326" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.341308" elapsed="0.001831"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.343751" 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-07-28T01:54:48.343288" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.344394" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.343980" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.344529" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:48.344713" 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-07-28T01:54:48.340851" elapsed="0.003887"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.344933" 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-07-28T01:54:48.321658" elapsed="0.023769"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.353798" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.353495" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.359788" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.359946" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.360046" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.353993" elapsed="0.006119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.360575" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.360275" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.414826" 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-07-28T01:54:48.360806" elapsed="0.054093"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.416958" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.415012" elapsed="0.002000"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.414980" elapsed="0.002056"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.420003" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.420051" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.417223" elapsed="0.002851"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.422030" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.420151" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.420132" elapsed="0.001993"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.422159" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:48.422370" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.422414" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.353026" elapsed="0.069412"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.424845" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.423087" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.423069" elapsed="0.001845"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.425577" 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-07-28T01:54:48.425102" elapsed="0.000502"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.426121" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.425768" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.426197" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.426377" 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-07-28T01:54:48.422741" elapsed="0.003661"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.426646" 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-07-28T01:54:48.352336" elapsed="0.074774"/>
</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-07-28T01:54:48.299904" elapsed="0.127263"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.292396" elapsed="0.134896"/>
</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-07-28T01:54:48.438324" 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-07-28T01:54:48.438501" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.438181" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.439106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.438683" elapsed="0.000451"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.439587" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.439287" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.440034" 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-07-28T01:54:48.439765" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.440493" 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-07-28T01:54:48.440209" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.441556" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.440670" elapsed="0.000917"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.442118" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.441781" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.442654" 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-07-28T01:54:48.442314" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.443177" 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-07-28T01:54:48.442849" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.443705" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.443370" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.444226" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.443901" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.444763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069a6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.444424" 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-07-28T01:54:48.437850" elapsed="0.007012"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.445398" 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-07-28T01:54:48.445013" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.445875" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.445598" elapsed="0.000376"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.453689" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.453362" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.459848" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.460399" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.460524" 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-07-28T01:54:48.453847" elapsed="0.006704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.460971" 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-07-28T01:54:48.460715" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.463835" 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-07-28T01:54:48.461160" elapsed="0.002748"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.466513" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.464007" elapsed="0.002601"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.463980" 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-07-28T01:54:48.466847" 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-07-28T01:54:48.467263" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.466994" elapsed="0.000346"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.466966" elapsed="0.000407"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.467418" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.470007" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.470074" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.453047" elapsed="0.017096"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.472920" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.471030" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.471008" elapsed="0.001981"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.473598" 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-07-28T01:54:48.473140" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.474238" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.473828" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.474315" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.474550" 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-07-28T01:54:48.470510" 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-07-28T01:54:48.474736" 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-07-28T01:54:48.452495" elapsed="0.022730"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.483627" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.483272" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.488497" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.488691" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.488800" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.483784" elapsed="0.005042"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.489238" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.488985" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.491597" 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-07-28T01:54:48.489424" elapsed="0.002225"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.493658" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.491719" elapsed="0.001991"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.491700" elapsed="0.002033"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.497852" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.497917" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.493873" elapsed="0.004080"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.500754" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.498065" elapsed="0.002814"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.498039" elapsed="0.002874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.500960" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:48.501283" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.501346" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.482858" elapsed="0.018519"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.504285" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.502262" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.502238" elapsed="0.002148"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.504999" 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-07-28T01:54:48.504556" elapsed="0.000506"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.505602" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.505228" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.505678" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.505896" 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-07-28T01:54:48.501751" elapsed="0.004170"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.506079" 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-07-28T01:54:48.482139" elapsed="0.024451"/>
</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-07-28T01:54:48.434560" elapsed="0.072147"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.427649" elapsed="0.079178"/>
</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-07-28T01:54:48.519267" 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-07-28T01:54:48.519407" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.519084" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.520110" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbc90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.519611" elapsed="0.000528"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.520700" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.520352" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.521266" 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-07-28T01:54:48.520944" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.521772" 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-07-28T01:54:48.521446" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.522730" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.521948" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.523363" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.522991" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.523941" 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-07-28T01:54:48.523577" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.524557" 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-07-28T01:54:48.524175" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.525114" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.524754" elapsed="0.000442"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.525727" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.525349" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.526327" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbc90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.525966" 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-07-28T01:54:48.518558" elapsed="0.007868"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.527087" 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-07-28T01:54:48.526634" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.527530" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.527270" 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-07-28T01:54:48.535977" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.535637" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.541553" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.542104" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.542255" 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-07-28T01:54:48.536167" elapsed="0.006114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.542749" 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-07-28T01:54:48.542442" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.546271" 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-07-28T01:54:48.542978" elapsed="0.003416"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.549291" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.546516" elapsed="0.002876"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.546487" elapsed="0.002940"/>
</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-07-28T01:54:48.549649" 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-07-28T01:54:48.550014" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.549827" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.549802" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.550205" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:54:48.552591" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.552637" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.535296" elapsed="0.017363"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.555031" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.553245" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.553227" elapsed="0.001873"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.555758" 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-07-28T01:54:48.555246" elapsed="0.000540"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.556335" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.555948" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.556411" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.556647" 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-07-28T01:54:48.552909" elapsed="0.003764"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.556866" elapsed="0.000425"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.534615" elapsed="0.022740"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.565714" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.565361" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.570480" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.570636" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.570768" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.565870" elapsed="0.004925"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.571211" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.570958" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.573627" 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-07-28T01:54:48.571398" 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-07-28T01:54:48.575703" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.573788" elapsed="0.001965"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.573769" elapsed="0.002007"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.580288" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.580352" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.575963" elapsed="0.004421"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.583418" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.580515" elapsed="0.003048"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.580487" elapsed="0.003114"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.583649" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:48.583974" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.584049" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.564944" elapsed="0.019144"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.586388" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.584738" elapsed="0.001694"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.584718" elapsed="0.001739"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.587017" 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-07-28T01:54:48.586618" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.587576" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.587205" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.587652" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:48.587851" 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-07-28T01:54:48.584352" elapsed="0.003525"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.588034" 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-07-28T01:54:48.564279" elapsed="0.024217"/>
</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-07-28T01:54:48.514961" elapsed="0.073595"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.507138" elapsed="0.081533"/>
</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-07-28T01:54:48.599798" 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-07-28T01:54:48.599933" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.599661" elapsed="0.000301"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.600590" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323a10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.600156" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.601046" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.600770" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.601505" 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-07-28T01:54:48.601222" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.601948" 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-07-28T01:54:48.601681" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.602861" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.602123" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.603421" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.603049" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.604096" 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-07-28T01:54:48.603711" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.604682" 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-07-28T01:54:48.604297" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.605275" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.604945" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.605907" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.605541" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.606492" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323a10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.606108" elapsed="0.000430"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.599315" elapsed="0.007279"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.607179" 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-07-28T01:54:48.606745" elapsed="0.000505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.607673" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.607407" elapsed="0.000371"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.616510" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.616105" elapsed="0.000433"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.622673" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.623230" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.623334" 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-07-28T01:54:48.616669" elapsed="0.006691"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.623873" 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-07-28T01:54:48.623578" elapsed="0.000341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.627448" 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-07-28T01:54:48.624064" elapsed="0.003533"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.630520" elapsed="0.000099"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.627700" elapsed="0.002978"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.627672" elapsed="0.003043"/>
</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-07-28T01:54:48.630976" 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-07-28T01:54:48.631303" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.631111" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.631087" elapsed="0.000323"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.631462" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:48.633822" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.633869" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.615784" elapsed="0.018108"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.636272" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.634524" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.634505" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.637059" 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-07-28T01:54:48.636575" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.637669" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.637254" elapsed="0.000479"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.637785" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.637968" 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-07-28T01:54:48.634125" 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-07-28T01:54:48.638196" elapsed="0.000454"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.615166" elapsed="0.023549"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.647216" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.646867" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.652974" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.653211" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.653317" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.647376" elapsed="0.005967"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.653829" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.653569" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.656460" 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-07-28T01:54:48.654057" elapsed="0.002471"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.658777" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.656602" elapsed="0.002244"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.656582" elapsed="0.002350"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.663542" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.663608" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.659136" elapsed="0.004505"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.666333" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.663750" elapsed="0.002740"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.663725" elapsed="0.002796"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.666556" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:48.666792" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.666841" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.646431" elapsed="0.020433"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.669167" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.667420" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.667403" elapsed="0.001833"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.669886" 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-07-28T01:54:48.669420" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.670497" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.670081" elapsed="0.000443"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.670576" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.670797" 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-07-28T01:54:48.667086" 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-07-28T01:54:48.670982" 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-07-28T01:54:48.645731" elapsed="0.025763"/>
</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-07-28T01:54:48.595841" elapsed="0.075713"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.588932" elapsed="0.082787"/>
</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-07-28T01:54:48.683607" 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-07-28T01:54:48.683764" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.683443" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.684426" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.683984" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.684944" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.684626" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.685457" 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-07-28T01:54:48.685130" elapsed="0.000370"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.685967" 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-07-28T01:54:48.685656" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.687028" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.686144" elapsed="0.000916"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.687616" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.687221" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.688188" 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-07-28T01:54:48.687817" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.688774" 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-07-28T01:54:48.688421" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.689398" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.689011" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.690023" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.689697" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.690639" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.690261" elapsed="0.000422"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.683073" elapsed="0.007666"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.691355" 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-07-28T01:54:48.690890" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.691851" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.691563" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.700393" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.700044" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.706028" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.706934" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.707125" 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-07-28T01:54:48.700610" elapsed="0.006554"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.707879" 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-07-28T01:54:48.707400" elapsed="0.000545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.711816" 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-07-28T01:54:48.708191" elapsed="0.003699"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.714560" elapsed="0.000072"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.711996" elapsed="0.002677"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.711965" 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-07-28T01:54:48.714846" 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-07-28T01:54:48.715113" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.714938" elapsed="0.000229"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.714922" elapsed="0.000268"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.715222" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:48.716991" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.717039" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.699690" elapsed="0.017373"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.719409" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.717678" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.717660" elapsed="0.001832"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.720191" 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-07-28T01:54:48.719734" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.720835" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.720423" elapsed="0.000470"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.720947" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.721131" 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-07-28T01:54:48.717285" elapsed="0.003905"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.721353" elapsed="0.000481"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.699029" elapsed="0.022912"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.730536" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.730169" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.736374" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.736776" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.736927" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.730734" elapsed="0.006220"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.737419" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.737123" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.740318" 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-07-28T01:54:48.737669" elapsed="0.002724"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.743253" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.740516" elapsed="0.002806"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.740486" elapsed="0.002869"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.747318" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.747364" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.743574" elapsed="0.003813"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.749337" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.747519" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.747497" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.749449" elapsed="0.000079"/>
</return>
<msg time="2026-07-28T01:54:48.749701" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.749745" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.729716" elapsed="0.020052"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.752158" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.750402" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.750384" elapsed="0.001845"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.752871" 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-07-28T01:54:48.752379" elapsed="0.000520"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.753458" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.753062" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.753592" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.753818" 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-07-28T01:54:48.750019" elapsed="0.003825"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.754004" elapsed="0.000458"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.729045" elapsed="0.025499"/>
</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-07-28T01:54:48.679441" elapsed="0.075161"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.672023" elapsed="0.082739"/>
</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-07-28T01:54:48.766586" 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-07-28T01:54:48.766786" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.766418" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.767485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.766978" elapsed="0.000537"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.767993" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.767670" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.768499" 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-07-28T01:54:48.768173" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.768989" 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-07-28T01:54:48.768679" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.770325" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.769202" elapsed="0.001157"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.771002" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.770617" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.771579" 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-07-28T01:54:48.771203" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.772137" 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-07-28T01:54:48.771775" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.772705" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:48.772334" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.773268" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:48.772905" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.773916" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.773524" elapsed="0.000440"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:48.766060" elapsed="0.007963"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.774702" 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-07-28T01:54:48.774217" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.775127" level="INFO">&lt;?xml version="1.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-07-28T01:54:48.774885" elapsed="0.000402"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.783673" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.783302" elapsed="0.000398"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.792119" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.792810" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.792930" 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-07-28T01:54:48.783870" elapsed="0.009087"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.793524" 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-07-28T01:54:48.793182" elapsed="0.000389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.796647" 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-07-28T01:54:48.793757" elapsed="0.002966"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.799638" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.796837" elapsed="0.002908"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.796804" elapsed="0.002977"/>
</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-07-28T01:54:48.799990" 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-07-28T01:54:48.800365" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.800171" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.800147" elapsed="0.000396"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.800596" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.803155" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.803268" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.782974" elapsed="0.020330"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.805932" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.804202" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.804182" elapsed="0.001821"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.806672" 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-07-28T01:54:48.806155" elapsed="0.000546"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.807320" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.806869" elapsed="0.000478"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.807398" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.807643" 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-07-28T01:54:48.803647" elapsed="0.004023"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.807832" 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-07-28T01:54:48.782302" elapsed="0.026082"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.816950" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.816638" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.823813" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.824067" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.824185" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.817112" elapsed="0.007099"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.824719" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.824381" elapsed="0.000386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.827148" 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-07-28T01:54:48.824914" elapsed="0.002287"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.829870" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.827366" elapsed="0.002579"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.827256" elapsed="0.002720"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.834684" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.834749" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.830175" elapsed="0.004606"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.837157" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.834889" elapsed="0.002324"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.834863" elapsed="0.002374"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.837270" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:48.837525" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.837571" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.816199" elapsed="0.021395"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.839931" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.838189" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.838172" elapsed="0.001831"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.840653" 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-07-28T01:54:48.840152" elapsed="0.000530"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.841237" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.840846" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.841313" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.841549" 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-07-28T01:54:48.837855" elapsed="0.003720"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.841734" 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-07-28T01:54:48.815513" elapsed="0.026721"/>
</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-07-28T01:54:48.762468" elapsed="0.079824"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.755054" elapsed="0.087405"/>
</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-07-28T01:54:48.856189" 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-07-28T01:54:48.856392" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.856041" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.857051" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.856594" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.857671" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.857328" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.858165" 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-07-28T01:54:48.857850" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.858670" 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-07-28T01:54:48.858379" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.859570" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:48.858880" elapsed="0.000721"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.860203" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.859822" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.860780" 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-07-28T01:54:48.860435" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.861377" 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-07-28T01:54:48.861014" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.861943" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.861588" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.862547" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:48.862139" elapsed="0.000456"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.863116" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.862747" 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-07-28T01:54:48.855627" elapsed="0.007587"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.863914" 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-07-28T01:54:48.863400" elapsed="0.000545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.864380" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.864097" 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-07-28T01:54:48.872756" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.872399" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.879153" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.880521" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.880891" 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-07-28T01:54:48.872911" elapsed="0.008044"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.882028" 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-07-28T01:54:48.881352" elapsed="0.000796"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.887269" 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-07-28T01:54:48.882521" elapsed="0.004832"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.890077" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.887486" elapsed="0.002705"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.887431" elapsed="0.002799"/>
</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-07-28T01:54:48.890440" elapsed="0.000062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.890807" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.890605" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.890581" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.890965" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.893301" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.893348" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.872040" elapsed="0.021332"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.895625" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.893985" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.893966" elapsed="0.001727"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.896292" 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-07-28T01:54:48.895845" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.896880" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.896517" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.896961" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:48.897159" 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-07-28T01:54:48.893627" elapsed="0.003558"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.897348" 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-07-28T01:54:48.871399" elapsed="0.026447"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.905856" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.905539" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.912169" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.912337" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.912492" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.906023" elapsed="0.006501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.912960" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.912693" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.915255" 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-07-28T01:54:48.913154" 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-07-28T01:54:48.917566" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.915427" elapsed="0.002217"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.915407" elapsed="0.002280"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.921737" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:48.921803" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:48.917891" elapsed="0.003955"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:48.924743" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.921963" elapsed="0.002866"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.921935" elapsed="0.002930"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:48.924912" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:54:48.925189" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:48.925235" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.905127" elapsed="0.020131"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.927498" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.925850" elapsed="0.001696"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.925831" elapsed="0.001737"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.928158" 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-07-28T01:54:48.927720" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.928796" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.928360" elapsed="0.000463"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.928873" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:48.929075" 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-07-28T01:54:48.925498" elapsed="0.003603"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:48.929262" 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-07-28T01:54:48.904494" elapsed="0.025249"/>
</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-07-28T01:54:48.852098" elapsed="0.077705"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.842785" elapsed="0.087144"/>
</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-07-28T01:54:48.941502" 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-07-28T01:54:48.941674" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.941329" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:48.942309" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:48.941874" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.942823" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:48.942515" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.943305" 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-07-28T01:54:48.943013" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:48.943802" 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-07-28T01:54:48.943520" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:48.944653" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:48.943992" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.945239" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.944872" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.945862" 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-07-28T01:54:48.945515" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.946415" 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-07-28T01:54:48.946065" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.946964" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.946643" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.947530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:48.947177" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.948069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:48.947733" 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-07-28T01:54:48.940976" elapsed="0.007193"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.948760" 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-07-28T01:54:48.948333" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.949259" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:48.948998" 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-07-28T01:54:48.957740" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.957389" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.964106" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.964726" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:48.964838" 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-07-28T01:54:48.957903" elapsed="0.006962"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.965363" 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-07-28T01:54:48.965048" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.968913" 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-07-28T01:54:48.965579" elapsed="0.003410"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:48.971720" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:54:48.969097" elapsed="0.002725"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.969065" elapsed="0.002793"/>
</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-07-28T01:54:48.972080" 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-07-28T01:54:48.972419" elapsed="0.000112"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:48.972211" elapsed="0.000372"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:48.972188" elapsed="0.000430"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.972665" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:48.974824" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:48.974872" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:48.957048" elapsed="0.017849"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:48.977136" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:48.975497" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:48.975464" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.977873" 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-07-28T01:54:48.977411" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.978438" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:48.978069" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:48.978534" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:48.978719" 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-07-28T01:54:48.975123" 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-07-28T01:54:48.978918" 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-07-28T01:54:48.956241" elapsed="0.023160"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.987479" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:48.987142" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:48.992836" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:48.993192" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:48.993410" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:48.987647" elapsed="0.005958"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.994700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:48.993974" elapsed="0.000831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:48.999989" 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-07-28T01:54:48.995187" elapsed="0.004881"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.003137" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.000174" elapsed="0.003039"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.000145" elapsed="0.003104"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.007183" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.007230" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.003463" elapsed="0.003791"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.009199" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.007333" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.007314" elapsed="0.001968"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.009315" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:49.009568" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.009615" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:48.986745" elapsed="0.022893"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.012050" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.010321" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.010303" elapsed="0.001814"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.012779" 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-07-28T01:54:49.012269" elapsed="0.000537"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.013362" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.012971" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.013439" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:54:49.013639" 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-07-28T01:54:49.009980" elapsed="0.003685"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.013889" elapsed="0.000436"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:48.986087" elapsed="0.028305"/>
</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-07-28T01:54:48.937573" elapsed="0.076877"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:48.930271" elapsed="0.084357"/>
</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-07-28T01:54:49.026427" 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-07-28T01:54:49.026597" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:49.026245" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.027270" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef1f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.026779" elapsed="0.000518"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.027791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.027450" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.028281" 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-07-28T01:54:49.027969" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.028782" 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-07-28T01:54:49.028459" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.029871" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.028958" elapsed="0.000944"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.030541" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.030138" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.031113" 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-07-28T01:54:49.030745" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.031696" 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-07-28T01:54:49.031311" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.032208" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:49.031893" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.032776" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.032402" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.033343" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef1f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.032975" elapsed="0.000460"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.025910" elapsed="0.007601"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.034079" 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-07-28T01:54:49.033664" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.034565" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.034259" elapsed="0.000365"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.042900" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.042545" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.048151" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.048808" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.048919" 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-07-28T01:54:49.043058" elapsed="0.005888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.049423" 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-07-28T01:54:49.049115" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.052230" 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-07-28T01:54:49.049667" elapsed="0.002616"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.054259" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.052365" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.052341" elapsed="0.002026"/>
</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-07-28T01:54:49.054534" 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-07-28T01:54:49.054760" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.054625" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.054609" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.054865" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:49.057276" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.057339" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.042202" elapsed="0.015169"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.060516" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.058164" elapsed="0.002418"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.058139" elapsed="0.002525"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.061564" 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-07-28T01:54:49.060875" elapsed="0.000727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.062616" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.061950" elapsed="0.000705"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.062727" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:49.063054" 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-07-28T01:54:49.057697" elapsed="0.005388"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.063247" elapsed="0.000468"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.041553" elapsed="0.022228"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.072133" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.071829" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.080779" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.081185" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.081430" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.072330" elapsed="0.009201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.082729" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.081954" elapsed="0.000892"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.088946" 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-07-28T01:54:49.083254" elapsed="0.005816"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.092205" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.089267" elapsed="0.002989"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.089218" elapsed="0.003061"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.095124" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.095171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.092421" elapsed="0.002773"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.097050" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.095274" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.095255" elapsed="0.001877"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.097166" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.097366" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.097410" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.071394" elapsed="0.026040"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.099675" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.098022" elapsed="0.001699"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.098002" elapsed="0.001740"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.100305" 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-07-28T01:54:49.099892" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.100868" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.100511" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.100943" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.101124" 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-07-28T01:54:49.097676" elapsed="0.003473"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.101361" 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-07-28T01:54:49.070727" elapsed="0.031118"/>
</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-07-28T01:54:49.022400" elapsed="0.079505"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.014941" elapsed="0.087090"/>
</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-07-28T01:54:49.113139" 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-07-28T01:54:49.113295" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.112994" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.113920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.113492" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.114385" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.114101" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.114854" 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-07-28T01:54:49.114581" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.115343" 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-07-28T01:54:49.115068" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.116397" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:49.115541" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.116945" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.116608" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.117484" 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-07-28T01:54:49.117142" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.118017" 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-07-28T01:54:49.117685" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.118548" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.118213" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.119100" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:49.118750" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.119645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.119302" 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-07-28T01:54:49.112657" elapsed="0.007087"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.120282" 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-07-28T01:54:49.119894" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.120755" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.120496" 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-07-28T01:54:49.128664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.128327" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.133806" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.134367" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.134502" 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-07-28T01:54:49.128825" elapsed="0.005705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.134958" 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-07-28T01:54:49.134698" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.137580" 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-07-28T01:54:49.135146" elapsed="0.002487"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.139530" elapsed="0.000034"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.137709" elapsed="0.001895"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.137687" elapsed="0.001943"/>
</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-07-28T01:54:49.139777" 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-07-28T01:54:49.140031" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.139868" elapsed="0.000251"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.139851" elapsed="0.000300"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.140195" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:49.142518" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.142584" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.128004" elapsed="0.014613"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.145693" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.143436" elapsed="0.002321"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.143408" elapsed="0.002380"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.146600" 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-07-28T01:54:49.146001" elapsed="0.000636"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.147574" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.146866" elapsed="0.000746"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.147683" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:54:49.147940" 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-07-28T01:54:49.142931" elapsed="0.005047"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.148162" 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-07-28T01:54:49.127423" elapsed="0.021223"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.156506" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.156181" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.163149" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.163386" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.163529" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.156665" elapsed="0.006893"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.164050" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.163757" elapsed="0.000380"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.167646" 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-07-28T01:54:49.164358" elapsed="0.003407"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.170418" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.167870" elapsed="0.002641"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.167843" elapsed="0.002702"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.173922" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.173970" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.170764" elapsed="0.003231"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.175869" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.174074" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.174055" elapsed="0.001897"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.175986" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:49.176194" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.176239" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.155796" elapsed="0.020466"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.178464" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.176839" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.176821" elapsed="0.001731"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.179122" 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-07-28T01:54:49.178704" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.179693" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.179314" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.179772" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:54:49.180000" 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-07-28T01:54:49.176500" elapsed="0.003526"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.180195" 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-07-28T01:54:49.155119" elapsed="0.025564"/>
</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-07-28T01:54:49.109319" elapsed="0.071424"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.102353" elapsed="0.078520"/>
</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-07-28T01:54:49.191936" 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-07-28T01:54:49.192140" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:49.191785" elapsed="0.000386"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.192774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.192330" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.193325" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.192970" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.193830" 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-07-28T01:54:49.193530" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.194285" 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-07-28T01:54:49.194010" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.195360" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.194496" elapsed="0.000896"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.195933" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.195586" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.196538" 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-07-28T01:54:49.196175" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.197083" 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-07-28T01:54:49.196737" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.197630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:49.197280" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.198160" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.197831" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.198720" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.198361" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.191427" elapsed="0.007395"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.199381" 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-07-28T01:54:49.198976" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.199843" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:49.199593" 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-07-28T01:54:49.207871" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.207557" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.214595" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.215369" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.215554" 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-07-28T01:54:49.208047" elapsed="0.007547"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.216293" 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-07-28T01:54:49.215879" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.220029" 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-07-28T01:54:49.216616" elapsed="0.003499"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.222812" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.220221" elapsed="0.002691"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.220192" elapsed="0.002763"/>
</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-07-28T01:54:49.223172" 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-07-28T01:54:49.223533" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.223302" elapsed="0.000308"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.223279" elapsed="0.000365"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.223689" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:49.226069" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.226134" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.207206" elapsed="0.018961"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.229320" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.227003" elapsed="0.002362"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.226976" elapsed="0.002412"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.230022" 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-07-28T01:54:49.229586" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.230612" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.230215" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.230690" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.230873" 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-07-28T01:54:49.226511" elapsed="0.004387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.231073" 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-07-28T01:54:49.206608" elapsed="0.024955"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.239581" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.239250" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.244386" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.244572" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.244724" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.239743" elapsed="0.005008"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.245295" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.244928" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.248860" 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-07-28T01:54:49.245599" elapsed="0.003400"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.251667" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.249100" elapsed="0.002638"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.249074" elapsed="0.002703"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.255336" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.255382" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.251989" elapsed="0.003416"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.257383" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.255501" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.255481" elapsed="0.001999"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.257515" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.257754" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.257798" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.238859" elapsed="0.018962"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.260179" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.258442" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.258387" elapsed="0.001859"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.260886" 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-07-28T01:54:49.260395" elapsed="0.000519"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.261536" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.261120" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.261612" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.261835" 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-07-28T01:54:49.258034" elapsed="0.003827"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.262022" elapsed="0.000481"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.238204" elapsed="0.024364"/>
</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-07-28T01:54:49.188074" elapsed="0.074553"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.181074" elapsed="0.081674"/>
</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-07-28T01:54:49.275307" 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-07-28T01:54:49.275504" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.275149" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.276200" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06988b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.275741" elapsed="0.000523"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.276754" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.276420" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.277293" 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-07-28T01:54:49.276938" elapsed="0.000383"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.277777" 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-07-28T01:54:49.277491" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.278996" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.277990" elapsed="0.001040"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.279579" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.279187" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.280248" 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-07-28T01:54:49.279883" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.280797" 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-07-28T01:54:49.280447" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.281384" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.281031" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.282003" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.281642" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.282587" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06988b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.282204" elapsed="0.000428"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.274763" elapsed="0.007925"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.283269" 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-07-28T01:54:49.282839" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.283787" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.283508" 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-07-28T01:54:49.292143" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.291844" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.297873" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.298426" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.298550" 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-07-28T01:54:49.292340" elapsed="0.006236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.299035" 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-07-28T01:54:49.298739" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.301837" 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-07-28T01:54:49.299226" elapsed="0.002663"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.304763" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.301973" elapsed="0.002988"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.301949" elapsed="0.003057"/>
</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-07-28T01:54:49.305209" 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-07-28T01:54:49.305661" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.305437" elapsed="0.000300"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.305360" elapsed="0.000459"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.305867" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:49.308388" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.308461" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.291487" elapsed="0.017024"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.311287" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.309375" elapsed="0.001959"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.309350" elapsed="0.002006"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.311959" 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-07-28T01:54:49.311536" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.312545" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.312156" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.312623" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.312804" 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-07-28T01:54:49.308810" 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-07-28T01:54:49.313001" 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-07-28T01:54:49.290870" elapsed="0.022636"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.321512" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.321178" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.330180" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.330339" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.330451" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.321700" elapsed="0.008802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.330942" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.330677" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.333222" 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-07-28T01:54:49.331147" elapsed="0.002128"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.335763" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.333345" elapsed="0.002485"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.333327" elapsed="0.002537"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.340458" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.340546" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.336073" elapsed="0.004506"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.343151" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.340697" elapsed="0.002511"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.340670" elapsed="0.002561"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.343305" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.343523" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.343568" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.320786" elapsed="0.022804"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.345782" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.344152" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.344135" elapsed="0.001717"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.346444" 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-07-28T01:54:49.346033" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.347028" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.346655" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.347107" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.347288" 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-07-28T01:54:49.343818" 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-07-28T01:54:49.347494" 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-07-28T01:54:49.320136" elapsed="0.027820"/>
</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-07-28T01:54:49.271162" elapsed="0.076850"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.262978" elapsed="0.085149"/>
</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-07-28T01:54:49.359416" 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-07-28T01:54:49.359592" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.359267" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.360238" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.359777" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.360751" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.360435" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.361217" 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-07-28T01:54:49.360942" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.361726" 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-07-28T01:54:49.361422" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.362929" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.361914" elapsed="0.001048"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.363489" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.363124" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.364033" 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-07-28T01:54:49.363692" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.364588" 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-07-28T01:54:49.364229" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.365111" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.364794" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.365832" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.365485" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.366510" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fc0b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.366095" elapsed="0.000461"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.358917" elapsed="0.007696"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.367168" 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-07-28T01:54:49.366767" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.367737" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.367464" 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-07-28T01:54:49.375751" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.375414" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.381367" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.381953" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.382063" 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-07-28T01:54:49.375908" elapsed="0.006181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.382644" 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-07-28T01:54:49.382289" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.386449" 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-07-28T01:54:49.382864" elapsed="0.003713"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.389812" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.386707" elapsed="0.003219"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.386670" elapsed="0.003303"/>
</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-07-28T01:54:49.390201" 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-07-28T01:54:49.390642" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.390358" elapsed="0.000363"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.390327" elapsed="0.000426"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.390798" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:54:49.393013" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.393060" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.375096" elapsed="0.017987"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.395389" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.393738" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.393719" elapsed="0.001741"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.396062" 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-07-28T01:54:49.395628" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.396641" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.396253" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.396738" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:49.396954" 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-07-28T01:54:49.393372" 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-07-28T01:54:49.397171" 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-07-28T01:54:49.374517" elapsed="0.023215"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.406976" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.406616" elapsed="0.000390"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.414752" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.415041" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.415256" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.407149" elapsed="0.008150"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.415960" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.415575" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.419246" 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-07-28T01:54:49.416226" elapsed="0.003090"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.422745" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.419414" elapsed="0.003401"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.419388" elapsed="0.003460"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.426991" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.427058" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.423121" elapsed="0.003971"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.429012" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.427199" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.427173" elapsed="0.001921"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.429127" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.429337" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.429381" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.406186" elapsed="0.023217"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.432115" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.430126" elapsed="0.002035"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.430102" elapsed="0.002081"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.432833" 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-07-28T01:54:49.432387" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.433420" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.433035" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.433521" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:49.433705" 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-07-28T01:54:49.429678" elapsed="0.004053"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.433891" 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-07-28T01:54:49.405513" elapsed="0.028884"/>
</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-07-28T01:54:49.355386" elapsed="0.079115"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.348321" elapsed="0.086349"/>
</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-07-28T01:54:49.446985" 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-07-28T01:54:49.447217" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.446795" elapsed="0.000467"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.448093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37310d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.447499" elapsed="0.000634"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.448773" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.448351" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.449338" 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-07-28T01:54:49.449025" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.449845" 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-07-28T01:54:49.449553" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.450853" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.450025" elapsed="0.000860"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.451491" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.451047" elapsed="0.000506"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.452217" 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-07-28T01:54:49.451771" elapsed="0.000507"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.452985" 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-07-28T01:54:49.452519" elapsed="0.000525"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.453604" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.453222" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.454177" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.453819" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.454780" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37310d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.454383" elapsed="0.000441"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.446367" elapsed="0.008514"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.455525" 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-07-28T01:54:49.455054" elapsed="0.000557"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.456038" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.455777" 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-07-28T01:54:49.464688" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.464358" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.471245" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.471868" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.472038" 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-07-28T01:54:49.464861" elapsed="0.007236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.472945" 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-07-28T01:54:49.472429" elapsed="0.000606"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.477177" 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-07-28T01:54:49.473316" elapsed="0.003938"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.479990" elapsed="0.000052"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.477356" elapsed="0.002752"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.477329" elapsed="0.002814"/>
</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-07-28T01:54:49.480296" 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-07-28T01:54:49.480557" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.480399" elapsed="0.000213"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.480381" elapsed="0.000254"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.480667" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:49.482350" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.482398" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.464035" elapsed="0.018387"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.484697" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.483001" elapsed="0.001743"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.482983" elapsed="0.001783"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.485348" 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-07-28T01:54:49.484923" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.485992" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.485615" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.486070" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.486251" 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-07-28T01:54:49.482656" elapsed="0.003620"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.486572" 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-07-28T01:54:49.463425" elapsed="0.023612"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.495027" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.494722" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.501431" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.501616" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.501715" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.495196" elapsed="0.006545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.502179" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.501917" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.504523" 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-07-28T01:54:49.502368" elapsed="0.002214"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.507133" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.504652" elapsed="0.002550"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.504633" elapsed="0.002601"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.511360" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.511424" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.507431" elapsed="0.004030"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.514032" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.511593" elapsed="0.002499"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.511567" elapsed="0.002549"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.514150" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.514348" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.514396" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.494321" elapsed="0.020104"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.516706" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.515027" elapsed="0.001724"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.515006" elapsed="0.001767"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.517339" 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-07-28T01:54:49.516922" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.517933" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.517561" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.518010" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.518193" 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-07-28T01:54:49.514681" elapsed="0.003584"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.518429" 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-07-28T01:54:49.493693" elapsed="0.025221"/>
</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-07-28T01:54:49.442703" elapsed="0.076268"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.434932" elapsed="0.084155"/>
</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-07-28T01:54:49.530254" 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-07-28T01:54:49.530402" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.530101" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.531036" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eef70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.530607" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.531530" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.531221" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.531995" 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-07-28T01:54:49.531715" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.532506" 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-07-28T01:54:49.532180" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.533414" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.532689" elapsed="0.000760"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.533976" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.533633" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.534537" 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-07-28T01:54:49.534178" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.535076" 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-07-28T01:54:49.534734" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.535616" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.535271" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.536167" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.535837" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.536774" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eef70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.536418" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.529756" elapsed="0.007119"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.537430" 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-07-28T01:54:49.537028" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.537895" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.537646" 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-07-28T01:54:49.546335" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.546021" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.552116" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.552711" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.552819" 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-07-28T01:54:49.546510" elapsed="0.006335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.553423" 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-07-28T01:54:49.553036" elapsed="0.000480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.557144" 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-07-28T01:54:49.553734" elapsed="0.003486"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.559849" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.557319" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.557293" 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-07-28T01:54:49.560182" 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-07-28T01:54:49.560527" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.560309" elapsed="0.000338"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.560287" elapsed="0.000410"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.560750" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:49.562554" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.562601" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.545694" elapsed="0.016930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.564871" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.563192" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.563174" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.565549" 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-07-28T01:54:49.565099" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.566120" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.565742" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.566197" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:49.566394" 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-07-28T01:54:49.562850" elapsed="0.003570"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.566598" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.545086" elapsed="0.021976"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.575170" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.574867" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.580174" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.580372" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.580508" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.575328" elapsed="0.005208"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.581005" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.580700" elapsed="0.000353"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.583436" 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-07-28T01:54:49.581200" elapsed="0.002311"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.585411" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.583592" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.583572" elapsed="0.001935"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.589418" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.589507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.585653" elapsed="0.003889"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.592062" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.589653" elapsed="0.002487"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.589627" elapsed="0.002546"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.592220" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:49.592515" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.592579" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.574460" elapsed="0.018152"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.595247" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.593429" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.593404" elapsed="0.001910"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.595882" 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-07-28T01:54:49.595477" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.596439" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.596073" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.596536" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.596720" 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-07-28T01:54:49.592910" 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-07-28T01:54:49.596904" 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-07-28T01:54:49.573819" elapsed="0.023562"/>
</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-07-28T01:54:49.526352" elapsed="0.071087"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.519279" elapsed="0.078293"/>
</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-07-28T01:54:49.608683" 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-07-28T01:54:49.608821" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.608540" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.609493" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fda250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.609003" elapsed="0.000520"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.610005" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.609717" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.610478" 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-07-28T01:54:49.610185" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.610935" 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-07-28T01:54:49.610661" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.612024" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.611113" elapsed="0.000942"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.612569" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.612214" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.613100" 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-07-28T01:54:49.612771" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.613667" 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-07-28T01:54:49.613318" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.614180" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.613863" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.614722" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.614379" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.615240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fda250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.614920" 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-07-28T01:54:49.608193" elapsed="0.007143"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.615893" 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-07-28T01:54:49.615506" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.616314" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.616075" 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-07-28T01:54:49.624089" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.623793" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.629527" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.630036" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.630174" 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-07-28T01:54:49.624247" elapsed="0.005953"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.630644" 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-07-28T01:54:49.630362" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.633211" 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-07-28T01:54:49.630836" elapsed="0.002427"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.635650" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.633333" elapsed="0.002413"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.633314" elapsed="0.002467"/>
</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-07-28T01:54:49.635980" 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-07-28T01:54:49.636298" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.636108" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.636085" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.636446" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:54:49.638796" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.638858" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.623475" elapsed="0.015415"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.641969" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.639680" elapsed="0.002368"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.639655" elapsed="0.002421"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.642648" 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-07-28T01:54:49.642231" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.643195" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.642839" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.643270" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:49.643449" 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-07-28T01:54:49.639193" elapsed="0.004299"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.643653" 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-07-28T01:54:49.622908" elapsed="0.021194"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.652499" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.652142" elapsed="0.000385"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.657320" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.657670" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.657783" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.652700" elapsed="0.005110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.658356" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.658056" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.661575" 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-07-28T01:54:49.658567" elapsed="0.003134"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.664589" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.661800" elapsed="0.002860"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.661774" elapsed="0.002919"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.668449" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.668516" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.664940" elapsed="0.003601"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.670374" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.668624" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.668601" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.670505" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.670716" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.670761" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.651713" elapsed="0.019071"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.672992" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.671348" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.671330" elapsed="0.001730"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.673660" 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-07-28T01:54:49.673222" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.674342" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.673856" elapsed="0.000514"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.674421" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.674627" 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-07-28T01:54:49.671003" elapsed="0.003689"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.674857" 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-07-28T01:54:49.651034" elapsed="0.024317"/>
</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-07-28T01:54:49.604932" elapsed="0.070526"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.597753" elapsed="0.077835"/>
</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-07-28T01:54:49.687422" 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-07-28T01:54:49.687610" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.687283" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.688259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.687793" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.688834" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.688503" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.689328" 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-07-28T01:54:49.689015" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.689877" 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-07-28T01:54:49.689561" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.691154" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.690060" elapsed="0.001126"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.691776" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.691345" elapsed="0.000476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.692422" 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-07-28T01:54:49.692017" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.693013" 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-07-28T01:54:49.692643" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.693619" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.693248" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.694185" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.693821" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.694792" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.694416" elapsed="0.000459"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:49.686949" elapsed="0.007983"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.695522" 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-07-28T01:54:49.695084" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.695982" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.695740" 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-07-28T01:54:49.704438" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.704098" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.710842" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.711383" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.711544" 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-07-28T01:54:49.704615" elapsed="0.006956"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.712033" 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-07-28T01:54:49.711733" elapsed="0.000346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.714896" 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-07-28T01:54:49.712224" elapsed="0.002731"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.717811" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.715048" elapsed="0.002906"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.715018" elapsed="0.002977"/>
</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-07-28T01:54:49.718251" 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-07-28T01:54:49.718695" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.718426" elapsed="0.000348"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.718358" elapsed="0.000499"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.718908" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:49.721433" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.721520" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.703744" elapsed="0.017810"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.724431" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.722440" elapsed="0.002055"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.722415" elapsed="0.002102"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.725156" 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-07-28T01:54:49.724707" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.725802" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.725348" elapsed="0.000481"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.725879" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.726059" 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-07-28T01:54:49.721916" elapsed="0.004204"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.726282" elapsed="0.000482"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.703097" elapsed="0.023734"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.735580" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.735220" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.740047" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.740202" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.740311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.735739" elapsed="0.004598"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.740863" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.740567" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.743269" 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-07-28T01:54:49.741061" elapsed="0.002261"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.745283" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.743393" elapsed="0.001940"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.743374" elapsed="0.001982"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.748501" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.748590" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.745519" elapsed="0.003097"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.750536" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.748696" elapsed="0.001937"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.748677" elapsed="0.001981"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.750728" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.750928" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.750973" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.734768" elapsed="0.016289"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.753403" elapsed="0.000048"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.751680" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.751661" elapsed="0.001862"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.754124" 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-07-28T01:54:49.753674" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.754784" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.754355" elapsed="0.000458"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.754864" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.755251" 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-07-28T01:54:49.751285" elapsed="0.004073"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.755649" elapsed="0.000485"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.734055" elapsed="0.022144"/>
</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-07-28T01:54:49.683363" elapsed="0.072894"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.675933" elapsed="0.080440"/>
</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-07-28T01:54:49.770047" 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-07-28T01:54:49.770239" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.769907" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.770924" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7c90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.770425" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.771492" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.771150" elapsed="0.000371"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.771996" 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-07-28T01:54:49.771717" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.772545" 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-07-28T01:54:49.772214" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.773577" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.772722" elapsed="0.000924"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.774183" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.773808" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.774806" 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-07-28T01:54:49.774422" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.775485" 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-07-28T01:54:49.775038" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.776033" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.775706" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.776599" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.776246" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.777204" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7c90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.776867" 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-07-28T01:54:49.769568" elapsed="0.007746"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.777890" 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-07-28T01:54:49.777483" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.778327" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.778082" 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-07-28T01:54:49.787754" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.787385" elapsed="0.000397"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.793737" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.794383" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.794573" 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-07-28T01:54:49.787911" elapsed="0.006699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.795206" 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-07-28T01:54:49.794849" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.799177" 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-07-28T01:54:49.795512" elapsed="0.003740"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.801998" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.799355" elapsed="0.002741"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.799327" elapsed="0.002805"/>
</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-07-28T01:54:49.802350" 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-07-28T01:54:49.802701" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.802509" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.802484" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.802868" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:49.804981" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.805028" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.787054" elapsed="0.018031"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.807306" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.805684" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.805662" elapsed="0.001712"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.807982" 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-07-28T01:54:49.807541" elapsed="0.000468"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.808553" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.808174" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.808641" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.808825" 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-07-28T01:54:49.805319" elapsed="0.003531"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.809009" 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-07-28T01:54:49.786454" elapsed="0.023040"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.817513" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.817183" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.821963" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.822117" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.822216" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.817672" elapsed="0.004569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.822700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.822416" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.825023" 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-07-28T01:54:49.822904" elapsed="0.002171"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.826952" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.825146" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.825127" elapsed="0.001898"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.830369" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.830435" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.827168" elapsed="0.003333"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.833349" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.830616" elapsed="0.002812"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.830589" elapsed="0.002896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.833535" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:49.833827" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.833891" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.816791" elapsed="0.017132"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.837105" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.834755" elapsed="0.002397"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.834729" elapsed="0.002446"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.837817" 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-07-28T01:54:49.837375" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.838382" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.838011" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.838463" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:54:49.838661" 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-07-28T01:54:49.834227" elapsed="0.004460"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.838844" 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-07-28T01:54:49.816144" elapsed="0.023167"/>
</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-07-28T01:54:49.764174" elapsed="0.075194"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.756622" elapsed="0.082884"/>
</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-07-28T01:54:49.850581" 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-07-28T01:54:49.850720" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.850420" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.851364" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e76a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.850902" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.851857" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.851565" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.852361" 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-07-28T01:54:49.852039" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.852849" 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-07-28T01:54:49.852569" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.853825" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.853037" elapsed="0.000819"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.854375" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.854031" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.854931" 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-07-28T01:54:49.854595" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.855455" 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-07-28T01:54:49.855126" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.855993" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.855675" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.856557" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.856191" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.857093" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e76a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.856759" 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-07-28T01:54:49.850073" elapsed="0.007119"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.857765" 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-07-28T01:54:49.857343" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.858248" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.858000" 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-07-28T01:54:49.866427" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.866118" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.871641" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.872153" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.872266" 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-07-28T01:54:49.866606" elapsed="0.005687"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.872766" 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-07-28T01:54:49.872460" elapsed="0.000354"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.875361" 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-07-28T01:54:49.872960" elapsed="0.002454"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.877564" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.875512" elapsed="0.002153"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.875485" elapsed="0.002215"/>
</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-07-28T01:54:49.877901" 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-07-28T01:54:49.878238" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.878045" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.878020" elapsed="0.000323"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.878390" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:54:49.880849" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.880914" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.865786" elapsed="0.015161"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.884047" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.881755" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.881728" elapsed="0.002413"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.885044" 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-07-28T01:54:49.884361" elapsed="0.000730"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.885728" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.885331" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.885805" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.886001" 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-07-28T01:54:49.881246" elapsed="0.004782"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.886188" 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-07-28T01:54:49.865191" elapsed="0.021478"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.894795" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.894482" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.899367" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.899555" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.899658" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.894953" elapsed="0.004731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.900119" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.899844" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.902910" 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-07-28T01:54:49.900308" elapsed="0.002675"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.905741" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.903092" elapsed="0.002726"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.903057" elapsed="0.002802"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.910084" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.910142" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.906090" elapsed="0.004076"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.912018" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.910247" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.910228" elapsed="0.001872"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.912135" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.912349" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.912396" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.894076" elapsed="0.018344"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.914677" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.913030" elapsed="0.001692"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.912990" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.915303" 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-07-28T01:54:49.914894" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.915885" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.915524" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.915972" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:49.916156" 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-07-28T01:54:49.912658" elapsed="0.003560"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.916381" elapsed="0.000541"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.893416" elapsed="0.023572"/>
</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-07-28T01:54:49.846726" elapsed="0.070355"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.839698" elapsed="0.077501"/>
</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-07-28T01:54:49.928361" 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-07-28T01:54:49.928524" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.928220" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:49.929167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:49.928721" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.929710" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:49.929375" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.930210" 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-07-28T01:54:49.929912" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:49.930699" 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-07-28T01:54:49.930401" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.931854" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.930875" elapsed="0.001010"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.932394" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.932055" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.932957" 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-07-28T01:54:49.932625" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.933555" 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-07-28T01:54:49.933162" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.934090" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:49.933768" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.934644" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:49.934302" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.935184" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:49.934858" 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-07-28T01:54:49.927873" elapsed="0.007414"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.935873" 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-07-28T01:54:49.935449" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.936390" level="INFO">&lt;?xml version="1.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-07-28T01:54:49.936059" elapsed="0.000456"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.944542" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.944206" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.949883" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.950665" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:49.950839" 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-07-28T01:54:49.944704" elapsed="0.006175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.951516" 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-07-28T01:54:49.951111" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.955267" 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-07-28T01:54:49.951800" elapsed="0.003542"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:49.958080" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:54:49.955443" elapsed="0.002716"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.955415" elapsed="0.002770"/>
</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-07-28T01:54:49.958330" 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-07-28T01:54:49.958591" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.958424" elapsed="0.000222"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:49.958406" elapsed="0.000263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.958701" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:49.960384" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:49.960438" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:49.943875" elapsed="0.016604"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.962791" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.961052" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.961029" elapsed="0.001830"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.963412" 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-07-28T01:54:49.963008" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.964001" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.963633" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.964078" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.964259" 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-07-28T01:54:49.960695" elapsed="0.003589"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:49.964456" 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-07-28T01:54:49.943284" elapsed="0.021654"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.973350" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:49.973016" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:49.978521" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:49.978718" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:49.978842" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:49.973537" elapsed="0.005333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.979289" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:49.979031" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.981598" 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-07-28T01:54:49.979512" elapsed="0.002143"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.984270" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.981736" elapsed="0.002602"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.981710" elapsed="0.002659"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:49.988566" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:49.988633" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:49.984603" elapsed="0.004062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:49.991316" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:49.988785" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.988755" elapsed="0.002646"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:49.991435" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:54:49.991659" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:49.991709" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:49.972584" elapsed="0.019148"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:49.994014" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:49.992336" elapsed="0.001728"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:49.992317" elapsed="0.001770"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.994683" 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-07-28T01:54:49.994237" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:49.995247" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:49.994886" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:49.995325" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:49.995537" 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-07-28T01:54:49.991982" 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-07-28T01:54:49.995726" elapsed="0.000492"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:49.971902" elapsed="0.024382"/>
</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-07-28T01:54:49.924448" elapsed="0.071896"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.917488" elapsed="0.078994"/>
</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-07-28T01:54:50.008018" 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-07-28T01:54:50.008186" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.007870" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.008864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.008392" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.009415" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.009114" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.009911" 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-07-28T01:54:50.009619" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.010414" 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-07-28T01:54:50.010129" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.011341" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.010623" elapsed="0.000755"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.011918" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.011564" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.012459" 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-07-28T01:54:50.012117" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.013037" 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-07-28T01:54:50.012695" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.013593" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.013253" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.014190" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.013806" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.014756" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdbce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.014400" 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-07-28T01:54:50.007510" elapsed="0.007347"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.015423" 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-07-28T01:54:50.015010" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.015895" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.015632" 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-07-28T01:54:50.024032" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.023707" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.029885" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.030554" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.030719" 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-07-28T01:54:50.024192" elapsed="0.006555"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.031338" 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-07-28T01:54:50.030934" elapsed="0.000481"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.035410" 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-07-28T01:54:50.031651" elapsed="0.003861"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.038234" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.035628" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.035595" elapsed="0.002848"/>
</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-07-28T01:54:50.038686" 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-07-28T01:54:50.039036" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.038826" elapsed="0.000291"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.038796" elapsed="0.000353"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.039181" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:50.040875" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.040929" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.023357" elapsed="0.017597"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.043241" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.041578" elapsed="0.001710"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.041559" elapsed="0.001751"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.043933" 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-07-28T01:54:50.043491" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.044515" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.044127" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.044593" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.044775" 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-07-28T01:54:50.041198" elapsed="0.003603"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.044974" 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-07-28T01:54:50.022773" elapsed="0.022669"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.053566" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.053224" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.060093" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.060288" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.060399" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.053727" elapsed="0.006699"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.060898" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.060628" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.063337" 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-07-28T01:54:50.061095" elapsed="0.002425"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.066175" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.063625" elapsed="0.002630"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.063597" elapsed="0.002691"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.070512" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.070595" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.066524" elapsed="0.004106"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.072828" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.070803" elapsed="0.002082"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.070716" elapsed="0.002193"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.072942" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:50.073145" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.073189" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.052830" elapsed="0.020382"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.075477" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.073787" elapsed="0.001739"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.073768" elapsed="0.001781"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.076138" 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-07-28T01:54:50.075715" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.076725" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.076332" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.076801" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.076983" 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-07-28T01:54:50.073425" elapsed="0.003583"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.077166" 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-07-28T01:54:50.052160" elapsed="0.025494"/>
</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-07-28T01:54:50.003861" elapsed="0.073852"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:49.996679" elapsed="0.081168"/>
</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-07-28T01:54:50.089239" 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-07-28T01:54:50.089403" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.089093" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.090051" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.089612" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.090554" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.090234" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.091060" 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-07-28T01:54:50.090745" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.091548" 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-07-28T01:54:50.091251" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.092543" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.091738" elapsed="0.000836"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.093087" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.092746" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.093710" 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-07-28T01:54:50.093342" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.094246" 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-07-28T01:54:50.093913" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.094795" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.094457" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.095377" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.095036" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.095938" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.095600" 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-07-28T01:54:50.088746" elapsed="0.007293"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.096611" 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-07-28T01:54:50.096190" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.097041" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.096798" 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-07-28T01:54:50.105343" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.105036" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.111672" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.112190" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.112294" 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-07-28T01:54:50.105520" elapsed="0.006800"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.112757" 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-07-28T01:54:50.112501" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.115366" 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-07-28T01:54:50.112946" elapsed="0.002473"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.117890" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.115544" elapsed="0.002439"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.115522" elapsed="0.002497"/>
</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-07-28T01:54:50.118221" 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-07-28T01:54:50.118564" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.118348" elapsed="0.000292"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.118325" elapsed="0.000347"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.118717" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:50.121120" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.121185" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.104715" 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-07-28T01:54:50.124293" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.122036" elapsed="0.002303"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.122010" elapsed="0.002351"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.124930" 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-07-28T01:54:50.124527" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.125490" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.125119" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.125568" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:50.125750" 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-07-28T01:54:50.121545" elapsed="0.004231"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.125937" 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-07-28T01:54:50.104116" elapsed="0.022281"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.134342" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.134037" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.140697" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.140914" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.141059" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.134519" elapsed="0.006576"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.141710" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.141321" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.145141" 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-07-28T01:54:50.141976" elapsed="0.003238"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.147979" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.145313" elapsed="0.002752"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.145286" elapsed="0.002808"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.151071" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.151119" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.148241" elapsed="0.002903"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.153037" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.151234" elapsed="0.001907"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.151214" elapsed="0.001955"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.153210" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:54:50.153430" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.153501" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.133654" elapsed="0.019873"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.155801" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.154087" elapsed="0.001760"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.154069" elapsed="0.001809"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.156455" 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-07-28T01:54:50.156035" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.157043" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.156668" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.157120" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.157315" 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-07-28T01:54:50.153748" elapsed="0.003594"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.157532" 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-07-28T01:54:50.133007" elapsed="0.025005"/>
</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-07-28T01:54:50.085297" elapsed="0.072773"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.078168" elapsed="0.080023"/>
</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-07-28T01:54:50.169554" 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-07-28T01:54:50.169697" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.169382" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.170328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728c70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.169894" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.170834" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.170544" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.171313" 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-07-28T01:54:50.171035" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.171798" 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-07-28T01:54:50.171517" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.174575" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:50.172211" elapsed="0.002403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.175153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.174791" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.175716" 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-07-28T01:54:50.175356" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.176286" 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-07-28T01:54:50.175939" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.176838" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.176509" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.177442" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:50.177109" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.178014" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728c70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.177676" 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-07-28T01:54:50.169043" elapsed="0.009071"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.178691" 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-07-28T01:54:50.178280" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.179132" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.178887" 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-07-28T01:54:50.187257" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.186933" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.193009" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.193622" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.193740" 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-07-28T01:54:50.187427" elapsed="0.006338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.194201" 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-07-28T01:54:50.193940" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.196896" 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-07-28T01:54:50.194402" elapsed="0.002552"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.199619" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.197049" elapsed="0.002682"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.197020" 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-07-28T01:54:50.199974" 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-07-28T01:54:50.200335" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.200119" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.200094" elapsed="0.000362"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.200527" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:50.202902" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.202966" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.186606" elapsed="0.016394"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.205957" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.203901" elapsed="0.002103"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.203867" elapsed="0.002159"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.206622" 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-07-28T01:54:50.206179" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.207181" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.206814" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.207258" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.207450" 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-07-28T01:54:50.203379" elapsed="0.004117"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.207658" 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-07-28T01:54:50.186006" elapsed="0.022125"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.216385" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.216047" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.222087" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.222311" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.222450" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.216573" elapsed="0.005956"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.223131" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.222762" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.226644" 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-07-28T01:54:50.223398" 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-07-28T01:54:50.229408" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.226819" elapsed="0.002691"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.226793" elapsed="0.002747"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.232542" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.232591" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.229687" elapsed="0.002966"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.234589" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.232734" elapsed="0.001914"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.232715" elapsed="0.001958"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.234705" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.234904" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.234948" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.215659" elapsed="0.019346"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.237353" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.235615" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.235596" elapsed="0.001826"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.238011" 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-07-28T01:54:50.237602" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.238645" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.238261" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.238722" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.238916" 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-07-28T01:54:50.235227" elapsed="0.003716"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.239103" 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-07-28T01:54:50.214989" elapsed="0.024604"/>
</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-07-28T01:54:50.165648" elapsed="0.074004"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.158494" elapsed="0.081280"/>
</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-07-28T01:54:50.251090" 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-07-28T01:54:50.251248" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.250947" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.251896" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.251443" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.252378" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.252091" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.252909" 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-07-28T01:54:50.252584" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.253386" 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-07-28T01:54:50.253104" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.254536" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.253597" elapsed="0.000972"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.255090" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.254733" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.255654" 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-07-28T01:54:50.255294" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.256210" 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-07-28T01:54:50.255858" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.256768" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.256413" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.257353" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.257014" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.257914" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.257576" 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-07-28T01:54:50.250604" elapsed="0.007413"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.258587" 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-07-28T01:54:50.258180" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.259070" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.258826" elapsed="0.000313"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.267118" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.266814" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.273044" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.273626" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.273736" 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-07-28T01:54:50.267276" elapsed="0.006486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.274193" 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-07-28T01:54:50.273924" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.276812" 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-07-28T01:54:50.274398" elapsed="0.002468"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.279369" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.276939" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.276918" elapsed="0.002609"/>
</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-07-28T01:54:50.279787" 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-07-28T01:54:50.280158" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.279915" elapsed="0.000317"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.279892" elapsed="0.000372"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.280358" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:50.282869" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.282934" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.266479" elapsed="0.016487"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.286349" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.283864" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.283838" elapsed="0.002579"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.287026" 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-07-28T01:54:50.286581" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.287670" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.287260" elapsed="0.000436"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.287781" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:50.288011" 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-07-28T01:54:50.283317" elapsed="0.004720"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.288196" elapsed="0.000454"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.265889" elapsed="0.022827"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.297249" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.296892" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.302614" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.303111" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.303318" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.297412" elapsed="0.005944"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.304024" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.303608" elapsed="0.000481"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.307524" 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-07-28T01:54:50.304340" elapsed="0.003258"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.310336" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.307696" elapsed="0.002691"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.307669" elapsed="0.002742"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.313371" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.313445" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.310585" elapsed="0.002900"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.315417" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.313566" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.313547" elapsed="0.001972"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.315553" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.315748" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.315792" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.296458" elapsed="0.019357"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.318057" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.316373" elapsed="0.001730"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.316355" elapsed="0.001770"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.318717" 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-07-28T01:54:50.318286" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.319283" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.318916" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.319359" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.319559" 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-07-28T01:54:50.316028" 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-07-28T01:54:50.319744" 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-07-28T01:54:50.295794" elapsed="0.024473"/>
</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-07-28T01:54:50.247196" elapsed="0.073130"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.240084" elapsed="0.080395"/>
</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-07-28T01:54:50.331703" 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-07-28T01:54:50.331852" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.331558" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.332485" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed8a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.332039" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.332966" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.332678" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.333457" 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-07-28T01:54:50.333155" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.334050" 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-07-28T01:54:50.333715" elapsed="0.000362"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.335229" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.334268" elapsed="0.000992"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.335852" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.335459" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.336411" 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-07-28T01:54:50.336052" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.337045" 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-07-28T01:54:50.336674" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.337623" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.337243" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.338219" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.337893" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.338835" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed8a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.338459" elapsed="0.000419"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.331193" elapsed="0.007742"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.339567" 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-07-28T01:54:50.339121" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.340036" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.339789" elapsed="0.000365"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.348398" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.348098" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.353243" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.353805" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.353987" 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-07-28T01:54:50.348607" elapsed="0.005407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.354494" 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-07-28T01:54:50.354174" elapsed="0.000367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.357263" 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-07-28T01:54:50.354722" elapsed="0.002593"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.359367" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.357386" elapsed="0.002049"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.357366" elapsed="0.002111"/>
</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-07-28T01:54:50.359664" 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-07-28T01:54:50.359895" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.359758" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.359742" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.360040" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:50.361811" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.361856" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.347744" 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-07-28T01:54:50.364331" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.362588" elapsed="0.001788"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.362569" elapsed="0.001829"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.365056" 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-07-28T01:54:50.364565" elapsed="0.000518"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.365670" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.365248" elapsed="0.000448"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.365746" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.366009" 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-07-28T01:54:50.362160" elapsed="0.003877"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.366236" elapsed="0.000447"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.347129" elapsed="0.019619"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.375492" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.375134" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.379890" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.380123" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.380235" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.375650" elapsed="0.004611"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.380748" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.380423" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.383391" 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-07-28T01:54:50.380977" 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-07-28T01:54:50.386328" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.383638" elapsed="0.002762"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.383611" elapsed="0.002820"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.390960" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.391041" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.386652" elapsed="0.004426"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.393022" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.391167" elapsed="0.001916"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.391148" elapsed="0.001959"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.393172" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:50.393375" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.393419" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.374711" elapsed="0.018730"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.395773" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.394050" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.394032" elapsed="0.001809"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.396444" 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-07-28T01:54:50.395991" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.397054" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.396694" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.397131" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:50.397353" 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-07-28T01:54:50.393676" 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-07-28T01:54:50.397558" elapsed="0.000442"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.373952" elapsed="0.024116"/>
</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-07-28T01:54:50.327832" elapsed="0.070296"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.320760" elapsed="0.077526"/>
</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-07-28T01:54:50.410298" 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-07-28T01:54:50.410510" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.410156" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.411157" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.410697" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.411773" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.411422" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.412279" 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-07-28T01:54:50.411959" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.412794" 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-07-28T01:54:50.412511" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.413773" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.413014" elapsed="0.000791"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.414339" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.413965" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.414986" 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-07-28T01:54:50.414641" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.415552" 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-07-28T01:54:50.415196" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.416081" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.415764" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.416643" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.416291" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.417167" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ef560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.416844" 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-07-28T01:54:50.409782" elapsed="0.007487"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.417848" 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-07-28T01:54:50.417430" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.418292" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.418045" 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-07-28T01:54:50.426403" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.426099" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.431250" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.431800" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.431950" 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-07-28T01:54:50.426577" elapsed="0.005400"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.432412" 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-07-28T01:54:50.432143" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.435396" 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-07-28T01:54:50.432626" elapsed="0.002880"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.438121" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.435612" elapsed="0.002603"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.435584" 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-07-28T01:54:50.438458" 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-07-28T01:54:50.438855" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.438606" elapsed="0.000328"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.438584" elapsed="0.000387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.439029" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:50.441402" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.441501" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.425778" elapsed="0.015760"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.444571" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.442335" elapsed="0.002289"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.442309" elapsed="0.002337"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.445211" 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-07-28T01:54:50.444796" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.445807" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.445416" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.445883" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.446078" 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-07-28T01:54:50.441853" elapsed="0.004251"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.446274" 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-07-28T01:54:50.425185" elapsed="0.021575"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.460629" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.460172" elapsed="0.000498"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.467335" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.467595" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.467707" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.460828" elapsed="0.006906"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.468267" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.467911" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.471565" 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-07-28T01:54:50.468568" elapsed="0.003185"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.474506" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.471886" elapsed="0.002702"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.471848" elapsed="0.002773"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.478157" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.478206" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.474827" elapsed="0.003403"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.480362" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.478312" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.478293" elapsed="0.002153"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.480500" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:54:50.480718" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.480763" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.459177" 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-07-28T01:54:50.483027" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.481374" elapsed="0.001701"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.481355" elapsed="0.001752"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.483779" 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-07-28T01:54:50.483299" elapsed="0.000508"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.484356" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.483976" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.484435" elapsed="0.000048"/>
</return>
<msg time="2026-07-28T01:54:50.484643" 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-07-28T01:54:50.481029" elapsed="0.003641"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.484835" 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-07-28T01:54:50.457186" elapsed="0.028140"/>
</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-07-28T01:54:50.405960" elapsed="0.079431"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.398653" elapsed="0.086900"/>
</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-07-28T01:54:50.497036" 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-07-28T01:54:50.497205" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.496874" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.497856" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e71f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.497394" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.498334" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.498045" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.498812" 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-07-28T01:54:50.498534" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.499284" 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-07-28T01:54:50.499001" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.500292" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.499532" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.500851" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.500507" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.501473" 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-07-28T01:54:50.501111" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.502036" 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-07-28T01:54:50.501680" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.502580" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.502239" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.503125" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.502798" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.503717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e71f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.503338" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.496492" elapsed="0.007331"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.504390" 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-07-28T01:54:50.503978" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.504875" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.504615" 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-07-28T01:54:50.513228" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.512904" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.519115" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.519828" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.519941" 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-07-28T01:54:50.513391" elapsed="0.006577"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.520398" 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-07-28T01:54:50.520136" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.523074" 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-07-28T01:54:50.520623" elapsed="0.002504"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.525598" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.523205" elapsed="0.002507"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.523183" 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-07-28T01:54:50.526022" 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-07-28T01:54:50.526366" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.526171" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.526145" elapsed="0.000353"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.526546" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:50.528955" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.529020" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.512573" elapsed="0.016480"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.532291" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.529936" elapsed="0.002421"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.529910" elapsed="0.002478"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.533220" 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-07-28T01:54:50.532625" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.533802" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.533412" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.533880" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.534070" 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-07-28T01:54:50.529398" elapsed="0.004698"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.534268" 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-07-28T01:54:50.511964" elapsed="0.022794"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.542898" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.542571" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.548291" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.548513" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.548620" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.543060" elapsed="0.005586"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.549208" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.548839" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.552900" 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-07-28T01:54:50.549532" elapsed="0.003446"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.555735" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.553094" elapsed="0.002716"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.553063" elapsed="0.002781"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.559240" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.559287" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.556087" elapsed="0.003225"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.561204" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.559392" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.559372" elapsed="0.001915"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.561320" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:54:50.561607" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.561661" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.542163" elapsed="0.019523"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.563886" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.562275" elapsed="0.001658"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.562257" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.564586" 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-07-28T01:54:50.564112" elapsed="0.000502"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.565140" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.564780" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.565217" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.565399" 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-07-28T01:54:50.561919" elapsed="0.003505"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.565604" 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-07-28T01:54:50.541495" elapsed="0.024577"/>
</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-07-28T01:54:50.493065" elapsed="0.073069"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.485912" elapsed="0.080356"/>
</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-07-28T01:54:50.577610" 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-07-28T01:54:50.577771" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.577411" elapsed="0.000389"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.578441" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37295d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.577996" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.578970" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.578680" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.579418" 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-07-28T01:54:50.579149" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.579923" 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-07-28T01:54:50.579651" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.581156" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:50.580100" elapsed="0.001088"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.581715" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.581351" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.582281" 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-07-28T01:54:50.581952" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.582866" 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-07-28T01:54:50.582494" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.583409" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.583061" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.583989" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:50.583626" elapsed="0.000456"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.584679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37295d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.584236" elapsed="0.000489"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.577074" elapsed="0.007708"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.585403" 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-07-28T01:54:50.584975" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.585885" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.585602" elapsed="0.000348"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.594506" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.594129" elapsed="0.000405"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.600847" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.601473" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.601578" 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-07-28T01:54:50.594673" elapsed="0.006931"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.602019" 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-07-28T01:54:50.601762" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.604595" 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-07-28T01:54:50.602210" elapsed="0.002439"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.606480" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.604721" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.604701" elapsed="0.001874"/>
</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-07-28T01:54:50.606719" 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-07-28T01:54:50.606943" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.606810" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.606793" elapsed="0.000224"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.607049" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:50.608712" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.608758" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.593759" elapsed="0.015021"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.610994" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.609389" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.609371" elapsed="0.001694"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.611641" 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-07-28T01:54:50.611215" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.612181" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.611829" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.612256" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.612435" 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-07-28T01:54:50.609052" 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-07-28T01:54:50.612634" 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-07-28T01:54:50.593109" elapsed="0.019997"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.623132" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.622820" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.628099" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.628264" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.628372" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.623293" elapsed="0.005104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.628832" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.628578" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.631076" 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-07-28T01:54:50.629046" elapsed="0.002081"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.632984" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.631198" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.631178" elapsed="0.001879"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.635942" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.635988" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.633200" elapsed="0.002812"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.637843" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.636090" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.636071" elapsed="0.001853"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.637957" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:50.638157" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.638200" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.622416" elapsed="0.015806"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.640569" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.638790" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.638772" elapsed="0.001865"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.641302" 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-07-28T01:54:50.640787" elapsed="0.000542"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.642009" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.641602" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.642087" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.642305" 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-07-28T01:54:50.638437" elapsed="0.003894"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.642507" elapsed="0.000436"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.621780" elapsed="0.021231"/>
</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-07-28T01:54:50.573659" elapsed="0.069455"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.566618" elapsed="0.076624"/>
</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-07-28T01:54:50.655558" 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-07-28T01:54:50.655722" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.655356" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.656444" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ad90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.655954" elapsed="0.000537"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.656979" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.656690" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.657563" 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-07-28T01:54:50.657229" elapsed="0.000361"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.658059" 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-07-28T01:54:50.657744" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.659146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:50.658273" elapsed="0.000904"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.659784" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.659385" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.660344" 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-07-28T01:54:50.659983" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.660957" 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-07-28T01:54:50.660590" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.661571" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.661160" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.662174" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:50.661833" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.662791" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ad90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.662414" elapsed="0.000422"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.654984" elapsed="0.007909"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.663542" 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-07-28T01:54:50.663048" elapsed="0.000574"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.664067" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.663816" 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-07-28T01:54:50.673583" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.673080" elapsed="0.000536"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.679638" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.680377" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.680513" 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-07-28T01:54:50.673771" elapsed="0.006770"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.681042" 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-07-28T01:54:50.680746" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.684870" 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-07-28T01:54:50.681234" elapsed="0.003710"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.687833" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.685059" elapsed="0.002879"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.685027" elapsed="0.002948"/>
</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-07-28T01:54:50.688229" 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-07-28T01:54:50.688612" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.688361" elapsed="0.000328"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.688338" elapsed="0.000384"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.688767" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:50.690977" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.691023" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.672668" elapsed="0.018377"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.693385" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.691667" elapsed="0.001763"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.691649" elapsed="0.001806"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.694138" 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-07-28T01:54:50.693679" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.694740" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.694329" elapsed="0.000484"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.694905" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:50.695096" 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-07-28T01:54:50.691273" 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-07-28T01:54:50.695281" 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-07-28T01:54:50.671931" elapsed="0.023874"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.704277" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.703974" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.710312" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.710542" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.710645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.704495" elapsed="0.006175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.711130" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.710871" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.713545" 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-07-28T01:54:50.711358" 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-07-28T01:54:50.716238" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.713667" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.713648" elapsed="0.002690"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.720748" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.720812" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.716558" 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-07-28T01:54:50.723648" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.720954" elapsed="0.002752"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.720927" elapsed="0.002803"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.723763" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.723962" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.724068" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.703554" elapsed="0.020543"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.726345" elapsed="0.000048"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.724676" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.724658" elapsed="0.001790"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.727025" 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-07-28T01:54:50.726618" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.727674" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.727257" elapsed="0.000444"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.727751" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.727930" 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-07-28T01:54:50.724325" elapsed="0.003630"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.728168" elapsed="0.000455"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.702838" elapsed="0.025851"/>
</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-07-28T01:54:50.651130" elapsed="0.077618"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.643583" elapsed="0.085295"/>
</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-07-28T01:54:50.741018" 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-07-28T01:54:50.741218" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.740820" elapsed="0.000427"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.741998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.741459" elapsed="0.000570"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.742571" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.742221" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.743070" 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-07-28T01:54:50.742751" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.743576" 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-07-28T01:54:50.743248" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.744656" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.743755" elapsed="0.000932"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.745272" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.744855" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.745858" 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-07-28T01:54:50.745491" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.746534" 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-07-28T01:54:50.746055" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.747076" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.746742" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.747633" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.747290" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.748185" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.747837" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.740445" elapsed="0.007841"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.748871" 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-07-28T01:54:50.748443" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.749333" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.749072" elapsed="0.000408"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.759149" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.758631" elapsed="0.000565"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.766922" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.767665" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.767776" 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-07-28T01:54:50.759391" elapsed="0.008412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.768247" 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-07-28T01:54:50.767979" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.771131" 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-07-28T01:54:50.768455" 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-07-28T01:54:50.773891" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.771337" elapsed="0.002668"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.771303" elapsed="0.002740"/>
</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-07-28T01:54:50.774268" 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-07-28T01:54:50.774686" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.774415" elapsed="0.000350"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.774390" elapsed="0.000407"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.774851" elapsed="0.000024"/>
</return>
<msg time="2026-07-28T01:54:50.777229" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.777294" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.758106" elapsed="0.019220"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.780512" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.778158" elapsed="0.002421"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.778131" elapsed="0.002491"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.781432" 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-07-28T01:54:50.780836" elapsed="0.000657"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.782319" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.781724" elapsed="0.000638"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.782445" elapsed="0.000080"/>
</return>
<msg time="2026-07-28T01:54:50.782844" 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-07-28T01:54:50.777678" elapsed="0.005208"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.783112" elapsed="0.000508"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.757239" elapsed="0.026463"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.791831" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.791517" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.797810" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.798065" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.798169" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.791996" elapsed="0.006199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.798660" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.798360" elapsed="0.000394"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.802187" 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-07-28T01:54:50.798922" elapsed="0.003342"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.805096" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.802393" elapsed="0.002776"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.802355" elapsed="0.002847"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.809149" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.809201" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.805406" elapsed="0.003819"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.811161" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.809306" elapsed="0.001918"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.809285" elapsed="0.001964"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.811283" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:54:50.811503" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.811548" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.791099" elapsed="0.020471"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.813779" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.812138" elapsed="0.001687"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.812119" elapsed="0.001728"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.814439" 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-07-28T01:54:50.813998" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.815073" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.814649" elapsed="0.000451"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.815151" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.815331" 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-07-28T01:54:50.811796" 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-07-28T01:54:50.815534" 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-07-28T01:54:50.790364" elapsed="0.025661"/>
</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-07-28T01:54:50.736671" elapsed="0.079420"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.729145" elapsed="0.087080"/>
</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-07-28T01:54:50.827814" 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-07-28T01:54:50.827992" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.827660" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.828663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1df80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.828180" elapsed="0.000513"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.829210" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.828911" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.829705" 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-07-28T01:54:50.829396" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.830193" 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-07-28T01:54:50.829886" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.831336" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.830381" elapsed="0.000988"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.831908" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.831552" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.832481" 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-07-28T01:54:50.832122" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.833070" 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-07-28T01:54:50.832706" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.833652" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:50.833284" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.834239" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:50.833867" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.834890" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1df80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.834547" 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-07-28T01:54:50.827278" elapsed="0.007731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.835649" 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-07-28T01:54:50.835194" elapsed="0.000487"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.836098" level="INFO">&lt;?xml version="1.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-07-28T01:54:50.835838" 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-07-28T01:54:50.844343" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.844008" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.850259" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.850840" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.850985" 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-07-28T01:54:50.844522" elapsed="0.006490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.851488" 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-07-28T01:54:50.851184" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.854119" 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-07-28T01:54:50.851696" elapsed="0.002479"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.856195" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.854254" elapsed="0.002056"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.854232" elapsed="0.002117"/>
</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-07-28T01:54:50.856584" 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-07-28T01:54:50.856922" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.856728" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.856704" elapsed="0.000324"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.857082" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:54:50.859572" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.859639" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.843675" elapsed="0.015997"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.862946" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.860545" elapsed="0.002469"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.860519" elapsed="0.002526"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.863995" 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-07-28T01:54:50.863275" elapsed="0.000757"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.864631" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.864202" elapsed="0.000463"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.864720" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:50.864929" 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-07-28T01:54:50.860010" elapsed="0.004946"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:50.865136" elapsed="0.000450"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.843049" elapsed="0.022606"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.873971" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.873651" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.879868" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.880070" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.880225" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.874139" elapsed="0.006123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.880925" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.880532" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.884757" 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-07-28T01:54:50.881225" elapsed="0.003681"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.887638" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.885028" elapsed="0.002731"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.884992" elapsed="0.002810"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.890891" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.890939" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.888028" elapsed="0.002935"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.892841" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.891042" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.891023" elapsed="0.001899"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.892957" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:54:50.893180" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.893226" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.873226" elapsed="0.020023"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.895604" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.893873" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.893849" elapsed="0.001823"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.896351" 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-07-28T01:54:50.895870" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.896942" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.896564" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.897022" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.897206" 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-07-28T01:54:50.893510" 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-07-28T01:54:50.897402" elapsed="0.000432"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:50.872579" elapsed="0.025327"/>
</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-07-28T01:54:50.823758" elapsed="0.074211"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.816434" elapsed="0.081668"/>
</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-07-28T01:54:50.909708" 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-07-28T01:54:50.909884" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:50.909545" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.910577" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eec50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.910102" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.911074" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.910772" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.911574" 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-07-28T01:54:50.911267" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.912087" 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-07-28T01:54:50.911757" elapsed="0.000356"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.913097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.912280" elapsed="0.000849"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.913722" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.913301" elapsed="0.000470"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.914360" 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-07-28T01:54:50.913985" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.914971" 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-07-28T01:54:50.914607" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.915571" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:50.915201" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.916176" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:50.915797" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.916759" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eec50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.916392" elapsed="0.000412"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.909153" elapsed="0.007710"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.917491" 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-07-28T01:54:50.917035" elapsed="0.000489"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.917950" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:50.917693" 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-07-28T01:54:50.926305" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.925956" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.933671" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.934994" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:50.935237" 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-07-28T01:54:50.926511" elapsed="0.008785"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.936368" 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-07-28T01:54:50.935704" elapsed="0.000891"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.941796" 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-07-28T01:54:50.936932" elapsed="0.004918"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:50.943695" elapsed="0.000034"/>
</return>
<status status="PASS" start="2026-07-28T01:54:50.941927" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.941906" elapsed="0.001890"/>
</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-07-28T01:54:50.943945" 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-07-28T01:54:50.944175" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.944036" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:50.944020" elapsed="0.000296"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.944351" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:54:50.946025" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:50.946071" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:50.925619" elapsed="0.020475"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.948409" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.946683" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.946664" elapsed="0.001831"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.949122" 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-07-28T01:54:50.948649" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.949741" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.949316" elapsed="0.000452"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.949818" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:50.950001" 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-07-28T01:54:50.946320" 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-07-28T01:54:50.950187" 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-07-28T01:54:50.924927" elapsed="0.025748"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.958653" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:50.958317" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:50.963965" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:50.964137" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:50.964239" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:50.958814" elapsed="0.005451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.964748" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:50.964484" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.968122" 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-07-28T01:54:50.964939" elapsed="0.003257"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.970862" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.968295" elapsed="0.002638"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.968268" elapsed="0.002697"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.974308" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:50.974356" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:50.971165" elapsed="0.003214"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:50.976280" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:50.974476" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.974440" elapsed="0.001922"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:50.976396" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:54:50.976637" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:50.976681" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:50.957908" elapsed="0.018796"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:50.978927" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:50.977315" elapsed="0.001658"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:50.977296" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.979583" 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-07-28T01:54:50.979149" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.980133" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:50.979775" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:50.980209" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:50.980391" 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-07-28T01:54:50.976975" 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-07-28T01:54:50.980625" 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-07-28T01:54:50.957257" elapsed="0.023834"/>
</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-07-28T01:54:50.905601" elapsed="0.075549"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.898320" elapsed="0.082960"/>
</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-07-28T01:54:50.992528" 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-07-28T01:54:50.992745" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:50.992358" elapsed="0.000422"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:50.993480" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39499e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:50.992980" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.993953" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:50.993668" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.994402" 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-07-28T01:54:50.994132" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:50.994867" 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-07-28T01:54:50.994596" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:50.995995" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:50.995048" elapsed="0.000979"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.996565" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.996194" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.997194" 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-07-28T01:54:50.996794" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.997952" 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-07-28T01:54:50.997493" elapsed="0.000516"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.998685" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:50.998221" elapsed="0.000527"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:50.999403" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:50.998960" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.000149" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39499e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:50.999701" elapsed="0.000583"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:50.992010" elapsed="0.008357"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.001203" 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-07-28T01:54:51.000629" elapsed="0.000604"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.001657" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:51.001389" 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-07-28T01:54:51.009943" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.009605" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.017044" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.017701" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.017809" 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-07-28T01:54:51.010103" elapsed="0.007732"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.018410" 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-07-28T01:54:51.018013" elapsed="0.000497"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.022153" 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-07-28T01:54:51.018745" elapsed="0.003481"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.024809" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.022337" elapsed="0.002577"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.022305" elapsed="0.002643"/>
</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-07-28T01:54:51.025209" 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-07-28T01:54:51.025586" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.025339" elapsed="0.000332"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.025317" elapsed="0.000387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.025753" elapsed="0.000023"/>
</return>
<msg time="2026-07-28T01:54:51.027552" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.027598" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.009200" 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-07-28T01:54:51.029801" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.028188" elapsed="0.001658"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.028170" elapsed="0.001698"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.030423" 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-07-28T01:54:51.030016" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.031053" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.030690" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.031129" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.031310" 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-07-28T01:54:51.027849" elapsed="0.003486"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.031512" 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-07-28T01:54:51.008294" elapsed="0.023682"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.039841" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.039536" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.045694" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.045851" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.045949" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.040001" elapsed="0.005973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.046385" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.046133" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.048807" 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-07-28T01:54:51.046592" elapsed="0.002266"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.051054" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.048928" elapsed="0.002194"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.048909" elapsed="0.002244"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.054969" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.055034" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.051350" elapsed="0.003716"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.057692" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.055176" elapsed="0.002595"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.055150" elapsed="0.002654"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.057851" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:51.058092" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.058136" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.039140" elapsed="0.019018"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.060309" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.058723" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.058705" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.060940" 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-07-28T01:54:51.060539" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.061524" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.061134" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.061600" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:51.061778" 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-07-28T01:54:51.058374" 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-07-28T01:54:51.062000" 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-07-28T01:54:51.038502" elapsed="0.023956"/>
</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-07-28T01:54:50.988640" elapsed="0.073892"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:50.981607" elapsed="0.081053"/>
</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-07-28T01:54:51.073689" 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-07-28T01:54:51.073849" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:51.073541" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.074436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb740&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.074032" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.074917" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.074634" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.075362" 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-07-28T01:54:51.075093" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.075822" 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-07-28T01:54:51.075552" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.078692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.075996" elapsed="0.002729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.079228" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.078888" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.079764" 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-07-28T01:54:51.079422" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.080285" 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-07-28T01:54:51.079956" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.080806" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:54:51.080491" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.081317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.081001" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.081948" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb740&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.081593" 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-07-28T01:54:51.073158" elapsed="0.008887"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.082598" 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-07-28T01:54:51.082196" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.083016" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:54:51.082776" 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-07-28T01:54:51.091105" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.090800" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.096737" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.097316" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.097431" 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-07-28T01:54:51.091260" elapsed="0.006214"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.097951" 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-07-28T01:54:51.097638" elapsed="0.000369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.101564" 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-07-28T01:54:51.098253" elapsed="0.003383"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.104267" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.101796" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.101711" elapsed="0.002688"/>
</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-07-28T01:54:51.104625" 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-07-28T01:54:51.104966" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.104773" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.104749" elapsed="0.000322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.105115" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:51.107154" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.107199" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.090481" elapsed="0.016741"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.109397" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.107784" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.107766" elapsed="0.001717"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.110074" 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-07-28T01:54:51.109634" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.110726" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.110265" elapsed="0.000488"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.110804" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:51.110987" 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-07-28T01:54:51.107435" elapsed="0.003577"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.111171" 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-07-28T01:54:51.089897" elapsed="0.021751"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.119540" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.119219" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.125244" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.125441" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.125566" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.119698" elapsed="0.005894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.126049" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.125754" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.128444" 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-07-28T01:54:51.126242" elapsed="0.002272"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.130389" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.128585" elapsed="0.001853"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.128566" elapsed="0.001913"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.134110" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.134184" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.130624" elapsed="0.003593"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.136769" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.134328" elapsed="0.002520"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.134301" elapsed="0.002580"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.136927" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:54:51.137205" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.137266" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.118840" elapsed="0.018458"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.140041" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.138130" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.138061" elapsed="0.002047"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.140683" 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-07-28T01:54:51.140258" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.141233" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.140875" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.141311" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.141510" 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-07-28T01:54:51.137620" elapsed="0.003917"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.141696" 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-07-28T01:54:51.118205" elapsed="0.023971"/>
</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-07-28T01:54:51.069848" elapsed="0.072389"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.062862" elapsed="0.079492"/>
</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-07-28T01:54:51.153489" 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-07-28T01:54:51.153635" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.153333" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.154231" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.153816" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.154820" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.154525" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.155291" 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-07-28T01:54:51.155007" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.155818" 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-07-28T01:54:51.155490" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.156895" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:51.156021" elapsed="0.000906"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.157431" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.157091" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.157980" 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-07-28T01:54:51.157654" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.158572" 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-07-28T01:54:51.158193" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.159094" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.158774" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.159638" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:51.159299" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.160160" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.159840" 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-07-28T01:54:51.152999" elapsed="0.007259"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.160820" 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-07-28T01:54:51.160410" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.161248" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.161004" 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-07-28T01:54:51.169116" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.168808" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.175192" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.175730" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.175833" 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-07-28T01:54:51.169274" elapsed="0.006619"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.176319" 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-07-28T01:54:51.176059" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.178936" 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-07-28T01:54:51.176527" elapsed="0.002466"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.181589" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.179102" elapsed="0.002582"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.179074" 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-07-28T01:54:51.181921" 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-07-28T01:54:51.182245" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.182056" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.182033" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.182395" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:54:51.184803" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.184879" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.168458" elapsed="0.016459"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.187731" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.185711" elapsed="0.002066"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.185685" elapsed="0.002115"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.188357" 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-07-28T01:54:51.187950" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.188929" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.188568" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.189003" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.189184" 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-07-28T01:54:51.185218" 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-07-28T01:54:51.189368" 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-07-28T01:54:51.167892" elapsed="0.021959"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.197821" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.197518" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.204303" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.204552" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.204693" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.197978" elapsed="0.006751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.205307" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.204952" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.208738" 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-07-28T01:54:51.205594" elapsed="0.003274"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.211407" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.208982" elapsed="0.002492"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.208954" elapsed="0.002545"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.214182" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.214228" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.211643" elapsed="0.002609"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.216070" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.214331" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.214312" elapsed="0.001838"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.216182" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.216378" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.216421" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.197116" elapsed="0.019328"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.218640" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.217012" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.216993" elapsed="0.001714"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.219315" 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-07-28T01:54:51.218898" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.219885" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.219526" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.219961" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:51.220143" 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-07-28T01:54:51.216678" 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-07-28T01:54:51.220327" 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-07-28T01:54:51.196433" elapsed="0.024365"/>
</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-07-28T01:54:51.149640" elapsed="0.071215"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.142708" elapsed="0.078265"/>
</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-07-28T01:54:51.232066" 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-07-28T01:54:51.232205" 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-07-28T01:54:51.231925" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.232794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.232386" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.233252" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.232974" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.233739" 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-07-28T01:54:51.233432" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.234252" 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-07-28T01:54:51.233965" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.234993" 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-07-28T01:54:51.234432" elapsed="0.000639"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.235590" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.235237" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.236351" 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-07-28T01:54:51.235838" elapsed="0.000556"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.236906" 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-07-28T01:54:51.236570" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.237424" 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-07-28T01:54:51.237107" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.237963" 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-07-28T01:54:51.237642" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.238501" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.238161" 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-07-28T01:54:51.231587" elapsed="0.007011"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.239156" 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-07-28T01:54:51.238750" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.239616" 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-07-28T01:54:51.239339" elapsed="0.000333"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.247493" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.247171" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.253163" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.253888" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.254035" 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-07-28T01:54:51.247653" elapsed="0.006419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.254684" 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-07-28T01:54:51.254296" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.258370" 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-07-28T01:54:51.254948" elapsed="0.003494"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.261064" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.258569" elapsed="0.002591"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.258541" 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-07-28T01:54:51.261395" 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-07-28T01:54:51.261746" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.261552" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.261528" elapsed="0.000374"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.261954" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:54:51.264337" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.264407" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.246824" 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-07-28T01:54:51.267555" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.265237" elapsed="0.002382"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.265211" elapsed="0.002439"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.268338" 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-07-28T01:54:51.267880" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.268905" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.268549" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.268980" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.269160" 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-07-28T01:54:51.264764" elapsed="0.004421"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.269345" 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-07-28T01:54:51.246248" elapsed="0.023576"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.277793" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.277480" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.284529" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.284747" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.284885" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.277951" elapsed="0.006970"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.285530" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.285150" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.288922" 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-07-28T01:54:51.285796" elapsed="0.003198"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.291631" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.289094" elapsed="0.002607"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.289067" elapsed="0.002667"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.294489" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.294538" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.291930" elapsed="0.002631"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.296389" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.294640" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.294621" elapsed="0.001867"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.296524" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:51.296724" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.296768" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.277084" elapsed="0.019706"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.299008" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.297387" elapsed="0.001666"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.297369" elapsed="0.001706"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.299694" 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-07-28T01:54:51.299225" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.300256" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.299891" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.300334" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.300535" 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-07-28T01:54:51.297008" elapsed="0.003553"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.300719" 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-07-28T01:54:51.276455" elapsed="0.024719"/>
</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-07-28T01:54:51.228218" elapsed="0.073013"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.221243" elapsed="0.080106"/>
</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-07-28T01:54:51.312550" 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-07-28T01:54:51.312692" 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-07-28T01:54:51.312390" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.313274" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f0a5c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.312875" elapsed="0.000428"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.313758" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.313473" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.314210" 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-07-28T01:54:51.313938" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.314677" 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-07-28T01:54:51.314386" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.315386" 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-07-28T01:54:51.314854" elapsed="0.000562"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.315970" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.315592" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.316512" 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-07-28T01:54:51.316170" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.317043" 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-07-28T01:54:51.316710" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.317571" 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-07-28T01:54:51.317236" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.318280" 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-07-28T01:54:51.317769" elapsed="0.000557"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.318823" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f0a5c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.318496" 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-07-28T01:54:51.312052" elapsed="0.006908"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.319525" 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-07-28T01:54:51.319117" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.319979" 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-07-28T01:54:51.319706" 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-07-28T01:54:51.327939" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.327609" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.333589" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.334289" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.334431" 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-07-28T01:54:51.328105" elapsed="0.006385"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.335075" 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-07-28T01:54:51.334716" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.338768" 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-07-28T01:54:51.335341" elapsed="0.003501"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.341324" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.338940" elapsed="0.002452"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.338913" elapsed="0.002505"/>
</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-07-28T01:54:51.341580" 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-07-28T01:54:51.341810" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.341672" elapsed="0.000189"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.341656" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.341916" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:54:51.343576" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.343621" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.327268" elapsed="0.016376"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.345855" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.344224" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.344206" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.346516" 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-07-28T01:54:51.346078" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.347075" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.346709" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.347218" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:54:51.347431" 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-07-28T01:54:51.343857" elapsed="0.003624"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.347664" elapsed="0.000477"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:54:51.326704" elapsed="0.021509"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.356325" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.355968" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.362208" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.362398" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.362523" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.356505" elapsed="0.006045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.362973" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.362714" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.365699" 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-07-28T01:54:51.363163" elapsed="0.002610"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.368402" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.365877" elapsed="0.002618"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.365848" elapsed="0.002682"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.372288" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.372409" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.368733" elapsed="0.003711"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.374413" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.372579" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.372551" elapsed="0.001960"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.374545" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.374744" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.374787" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.355582" elapsed="0.019228"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.377050" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.375361" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.375343" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.377695" 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-07-28T01:54:51.377269" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.378254" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.377887" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.378331" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.378530" 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-07-28T01:54:51.375030" elapsed="0.003525"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.378717" 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-07-28T01:54:51.354909" elapsed="0.024339"/>
</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-07-28T01:54:51.308734" elapsed="0.070574"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.301636" elapsed="0.077801"/>
</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-07-28T01:54:51.390668" 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-07-28T01:54:51.390821" 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-07-28T01:54:51.390522" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.391411" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.391005" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.391899" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.391614" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.392357" 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-07-28T01:54:51.392084" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.392857" 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-07-28T01:54:51.392576" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.393597" 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-07-28T01:54:51.393034" elapsed="0.000594"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.394126" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.393789" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.394664" 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-07-28T01:54:51.394323" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.395187" 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-07-28T01:54:51.394860" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.395910" 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-07-28T01:54:51.395382" elapsed="0.000577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.396441" 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-07-28T01:54:51.396116" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.397069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.396700" elapsed="0.000413"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:51.390167" elapsed="0.007003"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.397740" 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-07-28T01:54:51.397324" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.398173" 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-07-28T01:54:51.397927" 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-07-28T01:54:51.406117" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.405811" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.415642" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.416431" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.416599" 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-07-28T01:54:51.406276" elapsed="0.010358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.417284" 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-07-28T01:54:51.416913" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.420931" 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-07-28T01:54:51.417575" elapsed="0.003430"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.423584" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.421104" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.421077" elapsed="0.002634"/>
</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-07-28T01:54:51.423913" 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-07-28T01:54:51.424229" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.424039" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.424016" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.424376" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:51.426714" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.426777" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.405485" elapsed="0.021323"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.429876" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.427594" elapsed="0.002347"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.427568" elapsed="0.002406"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.430551" 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-07-28T01:54:51.430134" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.431095" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.430742" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.431170" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:54:51.431350" 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-07-28T01:54:51.427110" elapsed="0.004265"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.431551" 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-07-28T01:54:51.404908" elapsed="0.027094"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.440059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.439758" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.446035" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.446307" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.446447" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.440222" elapsed="0.006293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.447095" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.446742" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.450546" 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-07-28T01:54:51.447360" elapsed="0.003259"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.453332" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.450717" elapsed="0.002683"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.450690" elapsed="0.002743"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.456215" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.456262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.453651" elapsed="0.002636"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.458108" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.456366" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.456347" elapsed="0.001842"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.458222" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:51.458419" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.458480" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.439350" elapsed="0.019154"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.460733" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.459121" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.459103" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.461386" 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-07-28T01:54:51.460947" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.462049" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.461602" elapsed="0.000473"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.462126" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.462308" 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-07-28T01:54:51.458720" 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-07-28T01:54:51.462510" 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-07-28T01:54:51.438703" elapsed="0.024262"/>
</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-07-28T01:54:51.386782" elapsed="0.076240"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.379753" elapsed="0.083386"/>
</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-07-28T01:54:51.474177" 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-07-28T01:54:51.474327" 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-07-28T01:54:51.474023" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.474928" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37286d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.474529" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.475510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.475158" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.475963" 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-07-28T01:54:51.475691" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.476413" 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-07-28T01:54:51.476140" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.477146" 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-07-28T01:54:51.476607" elapsed="0.000570"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.477752" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.477369" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.478274" 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-07-28T01:54:51.477950" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.478806" 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-07-28T01:54:51.478481" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.479533" 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-07-28T01:54:51.478997" elapsed="0.000585"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.480071" 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-07-28T01:54:51.479739" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.480617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37286d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.480271" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:51.473655" elapsed="0.007063"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.481264" 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-07-28T01:54:51.480870" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.481748" 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-07-28T01:54:51.481499" 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-07-28T01:54:51.489777" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.489434" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.496052" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.496900" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.497051" 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-07-28T01:54:51.489934" elapsed="0.007153"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.497814" 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-07-28T01:54:51.497381" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.501460" 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-07-28T01:54:51.498087" elapsed="0.003517"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.504248" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.501719" elapsed="0.002627"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.501689" elapsed="0.002694"/>
</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-07-28T01:54:51.504618" 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-07-28T01:54:51.504940" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.504749" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.504726" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.505095" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:51.507458" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.507542" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.489093" elapsed="0.018482"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.510488" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.508357" elapsed="0.002178"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.508331" elapsed="0.002226"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.511107" 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-07-28T01:54:51.510704" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.511669" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.511295" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.511746" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.511927" 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-07-28T01:54:51.507879" elapsed="0.004073"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.512161" 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-07-28T01:54:51.488475" elapsed="0.024171"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.520682" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.520304" elapsed="0.000405"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.525582" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.525737" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.525879" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.520841" elapsed="0.005064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.526453" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.526104" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.529810" 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-07-28T01:54:51.526741" elapsed="0.003217"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.532620" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.530061" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.530035" elapsed="0.002684"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.536171" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.536217" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.532969" elapsed="0.003271"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.538119" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.536317" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.536298" elapsed="0.001941"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.538273" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.538573" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.538682" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.519863" elapsed="0.018843"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.540949" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.539363" elapsed="0.001630"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.539346" elapsed="0.001668"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.541585" 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-07-28T01:54:51.541163" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.542158" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.541774" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.542233" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.542413" 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-07-28T01:54:51.539029" 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-07-28T01:54:51.542615" 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-07-28T01:54:51.519224" elapsed="0.023846"/>
</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-07-28T01:54:51.470343" elapsed="0.072784"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.463398" elapsed="0.079847"/>
</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-07-28T01:54:51.554407" 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-07-28T01:54:51.554581" 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-07-28T01:54:51.554245" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.555226" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.554779" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.555744" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.555432" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.556199" 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-07-28T01:54:51.555925" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.556662" 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-07-28T01:54:51.556374" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.557478" 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-07-28T01:54:51.556837" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.560083" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.557670" elapsed="0.002458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.560755" 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-07-28T01:54:51.560397" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.561281" 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-07-28T01:54:51.560953" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.561887" 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-07-28T01:54:51.561567" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.562422" 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-07-28T01:54:51.562083" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.562985" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.562658" 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-07-28T01:54:51.553876" elapsed="0.009210"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.563652" 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-07-28T01:54:51.563236" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.564199" 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-07-28T01:54:51.563914" 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-07-28T01:54:51.572381" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.571982" elapsed="0.000426"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.578057" level="INFO">GET Request : url=http://10.30.170.50: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=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.578674" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:54:51.578790" 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-07-28T01:54:51.572557" elapsed="0.006259"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.579233" 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-07-28T01:54:51.578977" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.582009" 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-07-28T01:54:51.579421" elapsed="0.002641"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:54:51.584371" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-07-28T01:54:51.582141" elapsed="0.002357"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.582117" elapsed="0.002420"/>
</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-07-28T01:54:51.584738" 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-07-28T01:54:51.585104" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.584911" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:54:51.584888" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.585249" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:54:51.587577" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:54:51.587639" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:54:51.571667" elapsed="0.016003"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.590728" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.588427" elapsed="0.002365"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.588402" elapsed="0.002420"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.591459" 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-07-28T01:54:51.591034" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.592012" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.591661" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.592086" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.592265" 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-07-28T01:54:51.587965" elapsed="0.004325"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:54:51.592447" 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-07-28T01:54:51.570978" elapsed="0.021943"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.600817" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:54:51.600518" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:51.606037" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0s6v1zoxz6qs6dzinldouyd398.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:51.606190" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:54:51.606287" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:54:51.600973" elapsed="0.005339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.606838" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.606492" elapsed="0.000394"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.610189" 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-07-28T01:54:51.607054" elapsed="0.003207"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.612862" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.610357" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.610331" elapsed="0.002630"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.616262" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:54:51.616307" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:54:51.613157" elapsed="0.003172"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:54:51.618123" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:54:51.616408" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.616389" elapsed="0.001813"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:54:51.618234" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:54:51.618428" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:54:51.618525" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:54:51.600130" elapsed="0.018420"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:54:51.620764" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:54:51.619133" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:54:51.619115" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.621379" 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-07-28T01:54:51.620978" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.621940" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:54:51.621586" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:54:51.622016" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:54:51.622194" 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-07-28T01:54:51.618795" 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-07-28T01:54:51.622377" 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-07-28T01:54:51.599505" elapsed="0.023392"/>
</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-07-28T01:54:51.550502" elapsed="0.072451"/>
</kw>
<status status="PASS" start="2026-07-28T01:54:51.543584" elapsed="0.079493"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:54:51.624118" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:54:51.624038" elapsed="0.000147"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-07-28T01:54:13.731145" elapsed="37.893075"/>
</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-07-28T01:54:51.678044" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0680510&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-07-28T01:54:51.677717" elapsed="0.000491"/>
</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-07-28T01:54:51.694937" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:54:51.695993" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:54:51 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":47766,"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":"15","byte-count":"1182","duration":{"second":36,"nanosecond":494000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"15"}},{"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-07-28T01:54:51.696546" 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-07-28T01:54:51.682298" elapsed="0.014311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.702126" level="INFO">{"opendaylight-inventory:node":[{"id":"openflow:1","flow-node-inventory:port-number":47766,"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":"15","byte-count":"1182","duration":{"second":36,"nanosecond":494000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"15"}},{"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-07-28T01:54:50.405Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"2a:33:ab:7e:0f:a1","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":"18","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":36,"nanosecond":703000000},"bytes":{"transmitted":"1491","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"d6:53:46:71:b3: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":36,"nanosecond":698000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"e6:bc:fa:ed:86:d8","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":"18","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":36,"nanosecond":703000000},"bytes":{"transmitted":"1491","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:54:50.421Z"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.696971" elapsed="0.006002"/>
</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-07-28T01:54:51.703316" elapsed="0.002779"/>
</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-07-28T01:54:51.706251" elapsed="0.002345"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:54:51.682178" elapsed="0.026460"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:54:51.680312" elapsed="0.028361"/>
</for>
<arg>${1}</arg>
<doc>Check all switches and stats in operational inventory</doc>
<status status="PASS" start="2026-07-28T01:54:51.678912" elapsed="0.029821"/>
</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-07-28T01:54:51.678361" elapsed="0.030420"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:54:51.711472" 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-07-28T01:54:51.708932" elapsed="0.002599"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:54:51.737868" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=37.800s, table=0, n_packets=15, n_bytes=1182, 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-07-28T01:54:51.711738" elapsed="0.026191"/>
</kw>
<doc>Initiate tcp connection with controller</doc>
<status status="PASS" start="2026-07-28T01:54:51.677487" elapsed="0.060503"/>
</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-07-28T01:54:51.738977" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:51.738726" 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-07-28T01:54:51.742430" 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-07-28T01:54:51.742597" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.742292" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:51.743182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:51.742777" elapsed="0.000433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.743666" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:51.743365" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.744162" 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-07-28T01:54:51.743847" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:51.744630" 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-07-28T01:54:51.744340" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:51.745601" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:51.744809" elapsed="0.000824"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.746123" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.745793" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.746670" 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-07-28T01:54:51.746336" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.747183" 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-07-28T01:54:51.746868" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.747699" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:51.747377" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.748235" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:51.747916" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:51.748763" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:51.748435" 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-07-28T01:54:51.741950" elapsed="0.006911"/>
</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-07-28T01:54:51.753211" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e54e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:51.752868" 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-07-28T01:54:51.753386" 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-07-28T01:54:51.753830" 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-07-28T01:54:51.754218" elapsed="0.000277"/>
</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-07-28T01:54:51.754649" elapsed="0.000528"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:51.755622" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e4090&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-07-28T01:54:51.755334" 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-07-28T01:54:51.755799" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:51.756713" 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-07-28T01:54:51.756235" elapsed="0.000541"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:51.757309" 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-07-28T01:54:51.756926" elapsed="0.000414"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:52.297547" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:52.297729" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:52.298065" 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-07-28T01:54:51.757488" elapsed="0.540639"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.303602" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:52.298673" elapsed="0.005035"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a36e5350&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a36e5350&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-07-28T01:54:51.752507" elapsed="0.551361"/>
</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-07-28T01:54:51.749011" elapsed="0.554985"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:54:51.738595" elapsed="0.565507"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.305178" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:52.304758" elapsed="0.000478"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:52.308892" 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-07-28T01:54:52.309076" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:52.308724" elapsed="0.000457"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:52.309803" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec360&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:52.309340" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.310284" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:52.309993" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.310787" 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-07-28T01:54:52.310495" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.311257" 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-07-28T01:54:52.310966" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:52.312334" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:52.311438" elapsed="0.000928"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.312946" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:52.312559" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.313500" 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-07-28T01:54:52.313154" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.314029" 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-07-28T01:54:52.313700" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.314562" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:52.314237" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.315081" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:52.314771" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.315629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec360&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:52.315291" 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-07-28T01:54:52.308322" elapsed="0.007408"/>
</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-07-28T01:54:52.320132" level="INFO">${req} = &lt;Element 'flow' at 0x7868b37327a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:52.319800" elapsed="0.000359"/>
</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-07-28T01:54:52.320320" 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-07-28T01:54:52.320771" elapsed="0.000272"/>
</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-07-28T01:54:52.321208" 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-07-28T01:54:52.321619" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:52.322383" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b37314e0&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-07-28T01:54:52.322117" 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-07-28T01:54:52.322573" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:52.323322" 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-07-28T01:54:52.322963" elapsed="0.000419"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:52.323978" 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-07-28T01:54:52.323590" elapsed="0.000418"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:52.797443" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:52.797695" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:52.798031" 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-07-28T01:54:52.324139" elapsed="0.473981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.803825" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:52.798721" elapsed="0.005236"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01ec360&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01ec360&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-07-28T01:54:52.319410" elapsed="0.484705"/>
</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-07-28T01:54:52.315882" elapsed="0.488372"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:54:52.304352" elapsed="0.499999"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.805855" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:52.805107" elapsed="0.000860"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:52.809809" 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-07-28T01:54:52.809993" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:52.809641" elapsed="0.000386"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:52.810701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:52.810203" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.811235" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:52.810901" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.811758" 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-07-28T01:54:52.811421" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:52.812230" 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-07-28T01:54:52.811947" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:52.813119" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:52.812411" elapsed="0.000739"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.813700" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:52.813321" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.814450" 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-07-28T01:54:52.813900" elapsed="0.000622"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.815024" 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-07-28T01:54:52.814691" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.815581" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:52.815234" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.816227" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:52.815873" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:52.816805" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:52.816442" 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-07-28T01:54:52.809226" elapsed="0.007683"/>
</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-07-28T01:54:52.821505" level="INFO">${req} = &lt;Element 'flow' at 0x7868b3731210&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:52.821102" elapsed="0.000434"/>
</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-07-28T01:54:52.821688" elapsed="0.000320"/>
</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-07-28T01:54:52.822177" elapsed="0.000301"/>
</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-07-28T01:54:52.822644" elapsed="0.000283"/>
</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-07-28T01:54:52.823085" elapsed="0.000404"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:52.823957" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e6ac0&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-07-28T01:54:52.823666" 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-07-28T01:54:52.824144" elapsed="0.000285"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:52.824993" 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-07-28T01:54:52.824612" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:52.825657" 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-07-28T01:54:52.825235" elapsed="0.000453"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:53.298216" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:53.298404" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:53.298741" 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-07-28T01:54:52.825832" elapsed="0.472987"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.304230" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:53.299272" elapsed="0.005078"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01ee570&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01ee570&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-07-28T01:54:52.820668" elapsed="0.483881"/>
</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-07-28T01:54:52.817100" elapsed="0.487777"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:54:52.804647" elapsed="0.500315"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.305611" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:53.305324" elapsed="0.000334"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:53.309422" 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-07-28T01:54:53.309618" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:53.309258" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:53.310286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b3d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:53.309819" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.310797" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:53.310499" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.311282" 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-07-28T01:54:53.310989" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.311774" 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-07-28T01:54:53.311482" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:53.312710" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:53.311956" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.313264" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:53.312911" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.313835" 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-07-28T01:54:53.313500" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.314377" 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-07-28T01:54:53.314034" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.314921" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:53.314609" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.315718" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:53.315133" elapsed="0.000635"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.316255" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b3d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:53.315926" 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-07-28T01:54:53.308866" elapsed="0.007489"/>
</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-07-28T01:54:53.321002" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1f1ebb0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:53.320448" elapsed="0.000585"/>
</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-07-28T01:54:53.321195" elapsed="0.000310"/>
</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-07-28T01:54:53.321673" 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-07-28T01:54:53.322081" 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-07-28T01:54:53.322511" elapsed="0.000366"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:53.323330" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1f356c0&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-07-28T01:54:53.323046" 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-07-28T01:54:53.323543" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:53.324448" 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-07-28T01:54:53.324040" elapsed="0.000501"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:53.325165" 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-07-28T01:54:53.324696" elapsed="0.000505"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:53.799331" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:53.799592" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:53.799900" 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-07-28T01:54:53.325344" elapsed="0.474631"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.805440" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:53.800570" elapsed="0.005031"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b069b3d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b069b3d0&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-07-28T01:54:53.320070" elapsed="0.485677"/>
</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-07-28T01:54:53.316539" elapsed="0.489340"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:54:53.305182" elapsed="0.500781"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.807185" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:53.806563" elapsed="0.000736"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:53.812107" 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-07-28T01:54:53.812320" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:53.811926" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:53.812982" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b0b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:53.812521" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.813501" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:53.813178" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.813990" 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-07-28T01:54:53.813694" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:53.814518" 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-07-28T01:54:53.814197" elapsed="0.000353"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:53.815593" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:53.814781" elapsed="0.000846"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.816228" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:53.815823" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.816866" 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-07-28T01:54:53.816528" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.817499" 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-07-28T01:54:53.817076" elapsed="0.000492"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.818371" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:53.817759" elapsed="0.000669"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.819007" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:53.818668" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:53.819664" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b0b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:53.819235" elapsed="0.000478"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:53.811504" elapsed="0.008268"/>
</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-07-28T01:54:53.825294" level="INFO">${req} = &lt;Element 'flow' at 0x7868b3731710&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:53.824763" elapsed="0.000572"/>
</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-07-28T01:54:53.825580" elapsed="0.000407"/>
</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-07-28T01:54:53.826222" elapsed="0.000399"/>
</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-07-28T01:54:53.826850" elapsed="0.000382"/>
</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-07-28T01:54:53.827480" elapsed="0.000542"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:53.828642" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1f356c0&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-07-28T01:54:53.828272" elapsed="0.000399"/>
</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-07-28T01:54:53.828836" elapsed="0.000254"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:53.829693" 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-07-28T01:54:53.829256" elapsed="0.000529"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:53.830362" 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-07-28T01:54:53.829942" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:54.301107" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:54.301525" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:54.301861" 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-07-28T01:54:53.830559" elapsed="0.471374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.307911" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:54.302432" elapsed="0.005587"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a394b0b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a394b0b0&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-07-28T01:54:53.824150" elapsed="0.484019"/>
</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-07-28T01:54:53.819925" elapsed="0.488397"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:54:53.806228" elapsed="0.502180"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.309703" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:54.309050" 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-07-28T01:54:54.314949" 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-07-28T01:54:54.315129" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:54.314794" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:54.315844" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:54.315320" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.316375" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:54.316057" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.316927" 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-07-28T01:54:54.316624" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.317470" 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-07-28T01:54:54.317135" elapsed="0.000367"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:54.318388" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:54.317669" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.318965" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:54.318622" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.319558" 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-07-28T01:54:54.319180" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.320090" 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-07-28T01:54:54.319761" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.320889" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:54.320289" elapsed="0.000650"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.321475" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:54.321114" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.322053" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdb060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:54.321715" elapsed="0.000392"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:54.314388" elapsed="0.007780"/>
</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-07-28T01:54:54.326737" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e4090&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:54.326356" 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-07-28T01:54:54.326915" 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-07-28T01:54:54.327358" elapsed="0.000325"/>
</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-07-28T01:54:54.327906" elapsed="0.000273"/>
</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-07-28T01:54:54.328338" elapsed="0.000372"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:54.329156" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e7470&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-07-28T01:54:54.328871" 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-07-28T01:54:54.329348" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:54.330188" 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-07-28T01:54:54.329785" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:54.330853" 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-07-28T01:54:54.330414" elapsed="0.000470"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:54.801401" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:54.801652" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:54.802012" 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-07-28T01:54:54.331018" elapsed="0.471046"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.805779" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:54.802436" elapsed="0.003412"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b1fdb060&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b1fdb060&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-07-28T01:54:54.325980" elapsed="0.479979"/>
</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-07-28T01:54:54.322321" elapsed="0.483726"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:54:54.308712" elapsed="0.497390"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.806953" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:54.806537" elapsed="0.000487"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:54.812055" 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-07-28T01:54:54.812226" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:54.811894" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:54.812983" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728770&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:54.812508" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.813510" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:54.813189" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.813996" 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-07-28T01:54:54.813703" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:54.814489" 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-07-28T01:54:54.814190" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:54.815518" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:54.814713" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.816076" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:54.815726" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.816628" 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-07-28T01:54:54.816277" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.817391" 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-07-28T01:54:54.816836" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.817946" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:54.817624" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.818499" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:54.818153" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:54.819068" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728770&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:54.818744" 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-07-28T01:54:54.811517" elapsed="0.007653"/>
</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-07-28T01:54:54.823642" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3729c60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:54.823241" elapsed="0.000435"/>
</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-07-28T01:54:54.823831" 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-07-28T01:54:54.824272" elapsed="0.000273"/>
</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-07-28T01:54:54.824699" 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-07-28T01:54:54.825122" elapsed="0.000363"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:54.825916" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b01ee750&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-07-28T01:54:54.825645" 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-07-28T01:54:54.826100" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:54.826979" 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-07-28T01:54:54.826530" elapsed="0.000557"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:54.827705" 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-07-28T01:54:54.827239" elapsed="0.000498"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:55.302957" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:55.303143" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:55.303527" 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-07-28T01:54:54.827872" elapsed="0.475725"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.309737" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:55.304126" elapsed="0.005715"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3728770&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3728770&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-07-28T01:54:54.822860" elapsed="0.487200"/>
</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-07-28T01:54:54.819322" elapsed="0.490865"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:54:54.806274" elapsed="0.503957"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.310840" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:55.310546" 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-07-28T01:54:55.314716" 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-07-28T01:54:55.314923" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:55.314567" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:55.315616" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:55.315107" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.316166" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:55.315843" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.316682" 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-07-28T01:54:55.316350" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.317175" 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-07-28T01:54:55.316864" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:55.318455" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:55.317381" elapsed="0.001120"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.319042" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:55.318705" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.319658" 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-07-28T01:54:55.319284" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.320326" 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-07-28T01:54:55.319954" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.320893" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:55.320579" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.321608" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:55.321156" elapsed="0.000504"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.322183" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:55.321823" 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-07-28T01:54:55.314154" elapsed="0.008132"/>
</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-07-28T01:54:55.327067" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3949a30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:55.326661" elapsed="0.000435"/>
</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-07-28T01:54:55.327249" elapsed="0.000329"/>
</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-07-28T01:54:55.327769" 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-07-28T01:54:55.328205" elapsed="0.000303"/>
</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-07-28T01:54:55.328661" elapsed="0.000388"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:55.329584" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b01efab0&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-07-28T01:54:55.329244" elapsed="0.000368"/>
</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-07-28T01:54:55.329763" elapsed="0.000293"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:55.330699" 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-07-28T01:54:55.330246" elapsed="0.000522"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:55.331386" 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-07-28T01:54:55.330915" elapsed="0.000502"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:55.804266" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:55.804696" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:55.805068" 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-07-28T01:54:55.331603" elapsed="0.473599"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.810235" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:55.805747" elapsed="0.004553"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a7650&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a7650&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-07-28T01:54:55.326245" elapsed="0.484145"/>
</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-07-28T01:54:55.322493" elapsed="0.487999"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:54:55.310394" elapsed="0.500153"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.811306" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:55.810952" elapsed="0.000474"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:55.816901" 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-07-28T01:54:55.817132" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:55.816689" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:55.817898" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:55.817383" elapsed="0.000545"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.818421" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:55.818084" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.818901" 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-07-28T01:54:55.818623" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:55.819405" 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-07-28T01:54:55.819124" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:55.822096" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:55.819643" elapsed="0.002487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.822735" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:55.822298" elapsed="0.000484"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.823307" 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-07-28T01:54:55.822945" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.823890" 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-07-28T01:54:55.823565" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.824534" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:55.824171" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.825092" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:55.824738" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:55.825678" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:55.825301" 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-07-28T01:54:55.816008" elapsed="0.009809"/>
</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-07-28T01:54:55.830442" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372bec0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:55.830038" elapsed="0.000450"/>
</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-07-28T01:54:55.830640" 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-07-28T01:54:55.831126" elapsed="0.000312"/>
</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-07-28T01:54:55.831657" 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-07-28T01:54:55.832106" elapsed="0.000459"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:55.833040" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a37284f0&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-07-28T01:54:55.832724" 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-07-28T01:54:55.833219" elapsed="0.000306"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:55.834116" 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-07-28T01:54:55.833678" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:55.834819" 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-07-28T01:54:55.834371" elapsed="0.000480"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:56.305639" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:56.305905" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:56.306209" 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-07-28T01:54:55.835028" elapsed="0.471242"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.311845" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:56.306951" elapsed="0.004958"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a5030&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a5030&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-07-28T01:54:55.829634" elapsed="0.482372"/>
</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-07-28T01:54:55.825972" elapsed="0.486130"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:54:55.810764" elapsed="0.501393"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.312919" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:56.312549" 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-07-28T01:54:56.318155" 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-07-28T01:54:56.318371" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:56.317935" elapsed="0.000479"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:56.319345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948900&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:56.318734" elapsed="0.000647"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.319862" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:56.319561" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.320334" 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-07-28T01:54:56.320046" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.320822" 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-07-28T01:54:56.320534" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:56.322048" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:56.321004" elapsed="0.001077"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.322639" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:56.322253" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.323185" 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-07-28T01:54:56.322854" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.323747" 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-07-28T01:54:56.323390" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.324281" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:56.323957" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.324831" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:56.324504" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.325380" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948900&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:56.325046" 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-07-28T01:54:56.317323" elapsed="0.008177"/>
</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-07-28T01:54:56.329958" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3728130&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:56.329586" 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-07-28T01:54:56.330134" elapsed="0.000277"/>
</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-07-28T01:54:56.330603" 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-07-28T01:54:56.331009" 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-07-28T01:54:56.331418" elapsed="0.000371"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:56.332225" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372a660&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-07-28T01:54:56.331945" 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-07-28T01:54:56.332412" elapsed="0.000271"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:56.333242" 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-07-28T01:54:56.332832" elapsed="0.000531"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:56.333976" 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-07-28T01:54:56.333534" elapsed="0.000474"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:56.806606" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:56.806807" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:56.807131" 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-07-28T01:54:56.334141" elapsed="0.473058"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.812844" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:56.807736" elapsed="0.005228"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3948900&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3948900&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-07-28T01:54:56.329194" elapsed="0.483934"/>
</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-07-28T01:54:56.325658" elapsed="0.487572"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:54:56.312322" elapsed="0.500947"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.813816" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:56.813557" elapsed="0.000317"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:56.817546" 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-07-28T01:54:56.817714" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:56.817371" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:56.818383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06985e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:56.817912" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.818895" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:56.818591" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.819382" 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-07-28T01:54:56.819090" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:56.819880" 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-07-28T01:54:56.819587" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:56.821144" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:56.820072" elapsed="0.001103"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.821713" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:56.821351" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.822311" 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-07-28T01:54:56.821928" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.822862" 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-07-28T01:54:56.822529" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.823385" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:56.823072" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.823933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:56.823617" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:56.824481" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06985e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:56.824150" 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-07-28T01:54:56.816989" elapsed="0.007593"/>
</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-07-28T01:54:56.829057" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372a660&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:56.828622" elapsed="0.000465"/>
</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-07-28T01:54:56.829241" elapsed="0.000302"/>
</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-07-28T01:54:56.829700" 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-07-28T01:54:56.830107" elapsed="0.000257"/>
</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-07-28T01:54:56.830534" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:56.831314" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a37284a0&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-07-28T01:54:56.831043" elapsed="0.000306"/>
</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-07-28T01:54:56.831534" elapsed="0.000254"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:56.832364" 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-07-28T01:54:56.831949" elapsed="0.000485"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:56.833071" 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-07-28T01:54:56.832610" elapsed="0.000493"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:57.307402" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:57.307770" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:57.308098" 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-07-28T01:54:56.833236" elapsed="0.474926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.312677" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:57.308689" elapsed="0.004053"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b06985e0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b06985e0&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-07-28T01:54:56.828227" elapsed="0.484607"/>
</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-07-28T01:54:56.824747" elapsed="0.488166"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:54:56.813394" elapsed="0.499586"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.313757" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:57.313357" elapsed="0.000466"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:57.318986" 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-07-28T01:54:57.319253" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:57.318718" elapsed="0.000566"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:57.319943" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eca90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:57.319450" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.320425" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:57.320136" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.320922" 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-07-28T01:54:57.320629" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.321400" 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-07-28T01:54:57.321107" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:57.322604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:57.321601" elapsed="0.001036"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.323163" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:57.322805" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.323694" 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-07-28T01:54:57.323365" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.324224" 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-07-28T01:54:57.323890" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.324740" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:57.324419" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.325246" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:57.324937" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.325771" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eca90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:57.325445" 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-07-28T01:54:57.318178" elapsed="0.007689"/>
</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-07-28T01:54:57.330221" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372b600&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:57.329844" 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-07-28T01:54:57.330397" elapsed="0.000290"/>
</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-07-28T01:54:57.330838" elapsed="0.000279"/>
</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-07-28T01:54:57.331350" elapsed="0.000323"/>
</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-07-28T01:54:57.331832" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:57.332628" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372a020&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-07-28T01:54:57.332334" 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-07-28T01:54:57.332805" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:57.333625" 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-07-28T01:54:57.333201" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:57.334268" 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-07-28T01:54:57.333844" elapsed="0.000455"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:57.809917" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:57.810110" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:57.810417" 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-07-28T01:54:57.334431" elapsed="0.476103"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.816042" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:57.811009" elapsed="0.005136"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01eca90&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01eca90&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-07-28T01:54:57.329482" elapsed="0.486826"/>
</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-07-28T01:54:57.326018" elapsed="0.490415"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:54:57.313151" elapsed="0.503524"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.817685" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:57.817281" elapsed="0.000485"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:57.822878" 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-07-28T01:54:57.823106" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:57.822670" elapsed="0.000480"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:57.824031" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4220&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:57.823368" elapsed="0.000705"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.824755" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:57.824309" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.825438" 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-07-28T01:54:57.825073" elapsed="0.000415"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:57.825939" 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-07-28T01:54:57.825648" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:57.827076" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:54:57.826123" elapsed="0.000986"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.827648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:57.827280" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.828190" 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-07-28T01:54:57.827860" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.828738" 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-07-28T01:54:57.828387" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.829273" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:54:57.828950" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.829834" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:54:57.829500" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:57.830365" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4220&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:57.830039" 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-07-28T01:54:57.822123" elapsed="0.008361"/>
</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-07-28T01:54:57.835108" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03232e0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:57.834736" 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-07-28T01:54:57.835285" elapsed="0.000300"/>
</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-07-28T01:54:57.835738" 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-07-28T01:54:57.836145" 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-07-28T01:54:57.836575" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:57.837388" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0323ce0&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-07-28T01:54:57.837097" 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-07-28T01:54:57.837582" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:57.838383" 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-07-28T01:54:57.837990" elapsed="0.000517"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:57.839085" 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-07-28T01:54:57.838661" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:58.311360" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:58.311639" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:58.311941" 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-07-28T01:54:57.839250" elapsed="0.472769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.317402" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:58.312535" elapsed="0.005001"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a4220&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a4220&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-07-28T01:54:57.834335" elapsed="0.483364"/>
</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-07-28T01:54:57.830640" elapsed="0.487214"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:54:57.817044" elapsed="0.500893"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.319278" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:58.318573" 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-07-28T01:54:58.322986" 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-07-28T01:54:58.323156" 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-07-28T01:54:58.322832" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:58.323824" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5a30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:58.323347" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.324313" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:58.324011" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.324804" 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-07-28T01:54:58.324513" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.325278" 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-07-28T01:54:58.324988" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:58.326385" 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-07-28T01:54:58.325474" elapsed="0.000943"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.327006" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:58.326603" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.327562" 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-07-28T01:54:58.327216" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.328176" 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-07-28T01:54:58.327834" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.328732" 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-07-28T01:54:58.328387" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.329268" 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-07-28T01:54:58.328937" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.329833" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5a30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:58.329502" 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-07-28T01:54:58.322423" elapsed="0.007511"/>
</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-07-28T01:54:58.334315" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0323e20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:58.333939" 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-07-28T01:54:58.334515" elapsed="0.000323"/>
</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-07-28T01:54:58.334994" elapsed="0.000246"/>
</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-07-28T01:54:58.335390" 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-07-28T01:54:58.335820" elapsed="0.000350"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:58.336627" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0323790&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-07-28T01:54:58.336323" 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-07-28T01:54:58.336804" elapsed="0.000255"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:58.337614" 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-07-28T01:54:58.337213" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:58.338242" 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-07-28T01:54:58.337828" elapsed="0.000446"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:58.812303" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:58.812691" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:58.813022" 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-07-28T01:54:58.338404" elapsed="0.474688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.818669" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:58.813626" elapsed="0.005148"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a5a30&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a5a30&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-07-28T01:54:58.333576" elapsed="0.485375"/>
</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-07-28T01:54:58.330086" elapsed="0.489030"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:54:58.318204" elapsed="0.500997"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.820514" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:58.819836" 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-07-28T01:54:58.824712" 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-07-28T01:54:58.824876" 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-07-28T01:54:58.824560" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:58.825561" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3d80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:58.825070" elapsed="0.000525"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.826054" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:58.825754" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.826552" 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-07-28T01:54:58.826251" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:58.827239" 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-07-28T01:54:58.826738" elapsed="0.000532"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:58.828160" 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-07-28T01:54:58.827438" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.828777" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:58.828369" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.829306" 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-07-28T01:54:58.828978" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.829898" 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-07-28T01:54:58.829521" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.830590" 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-07-28T01:54:58.830156" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.831300" 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-07-28T01:54:58.830856" elapsed="0.000514"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:58.832013" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3d80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:58.831599" elapsed="0.000473"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:54:58.824156" elapsed="0.007991"/>
</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-07-28T01:54:58.836889" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0323920&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:58.836523" elapsed="0.000394"/>
</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-07-28T01:54:58.837081" 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-07-28T01:54:58.837549" 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-07-28T01:54:58.838002" 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-07-28T01:54:58.838429" elapsed="0.000375"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:58.839253" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e4220&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-07-28T01:54:58.838971" 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-07-28T01:54:58.839435" elapsed="0.000274"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:58.840263" 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-07-28T01:54:58.839871" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:58.840934" 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-07-28T01:54:58.840515" elapsed="0.000450"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:59.313878" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:59.314107" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:59.314403" 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-07-28T01:54:58.841097" elapsed="0.473402"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.320072" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:59.314976" elapsed="0.005204"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f3d80&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f3d80&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-07-28T01:54:58.836095" elapsed="0.484234"/>
</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-07-28T01:54:58.832353" elapsed="0.488168"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:54:58.819505" elapsed="0.501105"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.321914" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:59.321228" elapsed="0.000888"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:59.326540" 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-07-28T01:54:59.326722" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:59.326378" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:59.327393" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37292b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:59.326958" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.327900" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:59.327608" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.328378" 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-07-28T01:54:59.328095" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.328870" 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-07-28T01:54:59.328589" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:59.329708" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:59.329062" elapsed="0.000677"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.330310" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:59.329911" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.330858" 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-07-28T01:54:59.330529" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.331394" 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-07-28T01:54:59.331057" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.331930" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:59.331614" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.332482" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:59.332144" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.333006" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37292b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:59.332686" 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-07-28T01:54:59.326009" elapsed="0.007098"/>
</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-07-28T01:54:59.337525" level="INFO">${req} = &lt;Element 'flow' at 0x7868a37286d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:59.337159" 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-07-28T01:54:59.337702" elapsed="0.000284"/>
</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-07-28T01:54:59.338370" elapsed="0.000276"/>
</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-07-28T01:54:59.338799" 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-07-28T01:54:59.339209" elapsed="0.000373"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:59.340023" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372a5c0&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-07-28T01:54:59.339738" 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-07-28T01:54:59.340204" elapsed="0.000277"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:59.341015" 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-07-28T01:54:59.340645" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:59.341675" 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-07-28T01:54:59.341261" elapsed="0.000449"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:54:59.814990" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:54:59.815169" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:54:59.815557" 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-07-28T01:54:59.341851" elapsed="0.473775"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.821383" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:59.816108" elapsed="0.005411"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a37292b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a37292b0&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-07-28T01:54:59.336786" elapsed="0.484897"/>
</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-07-28T01:54:59.333264" elapsed="0.488542"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:54:59.320882" elapsed="0.501004"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.823079" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:54:59.822447" elapsed="0.000760"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:54:59.827624" 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-07-28T01:54:59.827825" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:59.827471" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:54:59.828480" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2c50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:54:59.828009" elapsed="0.000537"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.829025" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:54:59.828705" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.829534" 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-07-28T01:54:59.829241" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:54:59.830022" 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-07-28T01:54:59.829748" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:54:59.830899" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:59.830237" elapsed="0.000694"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.831516" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:59.831094" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.832072" 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-07-28T01:54:59.831756" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.832639" 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-07-28T01:54:59.832304" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.833183" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:54:59.832872" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.833818" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:54:59.833438" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:54:59.834370" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2c50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:54:59.834055" 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-07-28T01:54:59.827046" elapsed="0.007438"/>
</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-07-28T01:54:59.839058" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6de40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:54:59.838690" elapsed="0.000397"/>
</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-07-28T01:54:59.839271" elapsed="0.000349"/>
</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-07-28T01:54:59.839775" 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-07-28T01:54:59.840212" elapsed="0.000300"/>
</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-07-28T01:54:59.840703" elapsed="0.000375"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:54:59.841556" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6d710&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-07-28T01:54:59.841231" elapsed="0.000353"/>
</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-07-28T01:54:59.841731" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:54:59.842694" 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-07-28T01:54:59.842162" elapsed="0.000634"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:54:59.843369" 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-07-28T01:54:59.842944" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:00.315926" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:00.316112" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:00.316490" 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-07-28T01:54:59.843592" elapsed="0.472973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.322877" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:00.317167" elapsed="0.005840"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f2c50&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f2c50&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-07-28T01:54:59.838275" elapsed="0.485063"/>
</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-07-28T01:54:59.834674" elapsed="0.488859"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:54:59.822143" elapsed="0.501502"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.325148" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:00.324329" elapsed="0.000897"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:00.330625" 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-07-28T01:55:00.330824" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:00.330426" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:00.331585" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:00.331059" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.332167" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:00.331812" elapsed="0.000395"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.332827" 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-07-28T01:55:00.332407" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.333401" 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-07-28T01:55:00.333053" elapsed="0.000376"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:00.334391" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:00.333641" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.335015" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:00.334644" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.335570" 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-07-28T01:55:00.335222" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.336104" 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-07-28T01:55:00.335779" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.336653" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:00.336317" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.337414" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:00.336972" elapsed="0.000522"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.338134" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:00.337696" elapsed="0.000522"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:00.329977" elapsed="0.008316"/>
</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-07-28T01:55:00.344739" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6e7a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:00.344187" elapsed="0.000589"/>
</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-07-28T01:55:00.345019" elapsed="0.000373"/>
</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-07-28T01:55:00.345656" elapsed="0.000376"/>
</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-07-28T01:55:00.346266" elapsed="0.000418"/>
</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-07-28T01:55:00.346929" elapsed="0.000557"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:00.348157" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6dee0&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-07-28T01:55:00.347725" elapsed="0.000479"/>
</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-07-28T01:55:00.348517" elapsed="0.000740"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:00.350069" 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-07-28T01:55:00.349521" elapsed="0.000643"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:00.351043" 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-07-28T01:55:00.350402" elapsed="0.000689"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:00.816936" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:00.817107" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:00.817430" 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-07-28T01:55:00.351312" elapsed="0.466217"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.823326" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:00.818071" elapsed="0.005322"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6cef0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6cef0&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-07-28T01:55:00.343629" elapsed="0.479876"/>
</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-07-28T01:55:00.338558" elapsed="0.485027"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:55:00.323950" elapsed="0.499685"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.824485" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:00.824028" elapsed="0.000527"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:00.830052" 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-07-28T01:55:00.830317" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:00.829817" elapsed="0.000542"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:00.831297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f8d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:00.830635" elapsed="0.000692"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.831815" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:00.831497" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.832315" 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-07-28T01:55:00.831995" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:00.832854" 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-07-28T01:55:00.832543" elapsed="0.000394"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:00.833911" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:00.833096" elapsed="0.000847"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.834552" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:00.834168" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.835107" 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-07-28T01:55:00.834753" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.835684" 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-07-28T01:55:00.835308" elapsed="0.000454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.836261" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:00.835917" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.836831" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:00.836476" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:00.837414" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f8d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:00.837066" 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-07-28T01:55:00.829261" elapsed="0.008270"/>
</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-07-28T01:55:00.842176" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6c540&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:00.841772" elapsed="0.000434"/>
</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-07-28T01:55:00.842353" 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-07-28T01:55:00.842822" 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-07-28T01:55:00.843246" elapsed="0.000469"/>
</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-07-28T01:55:00.843872" elapsed="0.000377"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:00.844770" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6dad0&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-07-28T01:55:00.844444" elapsed="0.000354"/>
</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-07-28T01:55:00.844947" elapsed="0.000292"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:00.845826" 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-07-28T01:55:00.845389" elapsed="0.000502"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:00.846563" 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-07-28T01:55:00.846096" elapsed="0.000499"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:01.317781" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:01.318143" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:01.318501" 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-07-28T01:55:00.846727" elapsed="0.471841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.324546" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:01.319163" elapsed="0.005450"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6f8d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6f8d0&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-07-28T01:55:00.841331" elapsed="0.483372"/>
</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-07-28T01:55:00.837682" elapsed="0.487097"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:55:00.823842" elapsed="0.500989"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.325665" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:01.325235" elapsed="0.000495"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:01.331369" 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-07-28T01:55:01.331672" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:01.331045" elapsed="0.000673"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:01.332665" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efc40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:01.331944" elapsed="0.000751"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.333189" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:01.332854" elapsed="0.000400"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.333753" 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-07-28T01:55:01.333413" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.334286" 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-07-28T01:55:01.333970" elapsed="0.000344"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:01.335395" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:01.334484" elapsed="0.000945"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.335994" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:01.335614" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.336634" 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-07-28T01:55:01.336231" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.337231" 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-07-28T01:55:01.336873" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.337791" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:01.337429" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.338415" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:01.338030" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.339039" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efc40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:01.338683" 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-07-28T01:55:01.330496" elapsed="0.008643"/>
</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-07-28T01:55:01.345767" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:01.345312" elapsed="0.000485"/>
</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-07-28T01:55:01.345948" elapsed="0.000315"/>
</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-07-28T01:55:01.346452" 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-07-28T01:55:01.346965" elapsed="0.000325"/>
</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-07-28T01:55:01.347450" elapsed="0.000527"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:01.348514" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06927a0&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-07-28T01:55:01.348148" elapsed="0.000394"/>
</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-07-28T01:55:01.348732" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:01.349615" 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-07-28T01:55:01.349175" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:01.350326" 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-07-28T01:55:01.349870" elapsed="0.000494"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:01.819400" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:01.819649" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:01.820030" 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-07-28T01:55:01.350595" elapsed="0.469503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.824050" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:01.820761" elapsed="0.003353"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05efc40&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05efc40&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-07-28T01:55:01.344897" elapsed="0.479334"/>
</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-07-28T01:55:01.339371" elapsed="0.484951"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:55:01.325045" elapsed="0.499330"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.825151" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:01.824784" 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-07-28T01:55:01.829953" 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-07-28T01:55:01.830143" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:01.829802" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:01.830836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:01.830346" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.831309" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:01.831021" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.831785" 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-07-28T01:55:01.831507" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:01.832271" 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-07-28T01:55:01.831968" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:01.833260" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:01.832478" elapsed="0.000815"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.833818" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:01.833479" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.834338" 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-07-28T01:55:01.834020" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.834879" 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-07-28T01:55:01.834558" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.835386" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:01.835076" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.835917" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:01.835604" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:01.836696" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:01.836116" elapsed="0.000625"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:01.829423" elapsed="0.007375"/>
</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-07-28T01:55:01.841089" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0691710&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:01.840730" 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-07-28T01:55:01.841264" 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-07-28T01:55:01.841704" 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-07-28T01:55:01.842096" 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-07-28T01:55:01.842514" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:01.843274" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0691760&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-07-28T01:55:01.843006" 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-07-28T01:55:01.843450" elapsed="0.000266"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:01.844336" 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-07-28T01:55:01.843868" elapsed="0.000582"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:01.845053" 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-07-28T01:55:01.844627" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:02.319935" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:02.320068" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:02.320294" 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-07-28T01:55:01.845215" elapsed="0.475123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.324080" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:02.320762" elapsed="0.003386"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b0691ad0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b0691ad0&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-07-28T01:55:01.840350" elapsed="0.483891"/>
</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-07-28T01:55:01.836951" elapsed="0.487382"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:55:01.824592" elapsed="0.499800"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.325322" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:02.324798" elapsed="0.000593"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:02.331690" 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-07-28T01:55:02.331901" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:02.331426" elapsed="0.000518"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:02.332879" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692b10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:02.332186" elapsed="0.000737"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.333693" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:02.333198" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.334383" 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-07-28T01:55:02.334024" elapsed="0.000390"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.334907" 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-07-28T01:55:02.334606" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:02.335797" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:02.335103" elapsed="0.000727"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.336377" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:02.336015" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.336948" 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-07-28T01:55:02.336602" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.337613" 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-07-28T01:55:02.337241" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.338156" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:02.337828" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.338753" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:02.338412" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.339303" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692b10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:02.338974" 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-07-28T01:55:02.330882" elapsed="0.008531"/>
</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-07-28T01:55:02.344584" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0690f40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:02.344169" elapsed="0.000447"/>
</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-07-28T01:55:02.344767" 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-07-28T01:55:02.345243" elapsed="0.000285"/>
</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-07-28T01:55:02.345701" 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-07-28T01:55:02.346131" elapsed="0.000387"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:02.346973" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0690bd0&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-07-28T01:55:02.346677" 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-07-28T01:55:02.347161" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:02.348027" 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-07-28T01:55:02.347642" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:02.348718" 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-07-28T01:55:02.348249" elapsed="0.000501"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:02.821415" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:02.821641" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:02.822018" 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-07-28T01:55:02.348881" elapsed="0.473445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.829173" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:02.822910" elapsed="0.006383"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b0692b10&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b0692b10&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-07-28T01:55:02.343771" elapsed="0.485750"/>
</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-07-28T01:55:02.339591" elapsed="0.490083"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:55:02.324592" elapsed="0.505173"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.831288" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:02.830592" elapsed="0.000742"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:02.835346" 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-07-28T01:55:02.835565" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:02.835183" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:02.836311" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef330&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:02.835763" elapsed="0.000577"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.836863" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:02.836514" elapsed="0.000385"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.837410" 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-07-28T01:55:02.837075" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:02.837951" 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-07-28T01:55:02.837624" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:02.839099" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:02.838170" elapsed="0.000996"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.839699" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:02.839336" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.840265" 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-07-28T01:55:02.839935" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.840881" 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-07-28T01:55:02.840517" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.841496" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:02.841105" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.842318" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:02.841701" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:02.842994" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef330&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:02.842585" elapsed="0.000465"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:02.834776" elapsed="0.008332"/>
</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-07-28T01:55:02.847876" level="INFO">${req} = &lt;Element 'flow' at 0x7868b06915d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:02.847492" 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-07-28T01:55:02.848061" 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-07-28T01:55:02.848524" 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-07-28T01:55:02.848936" 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-07-28T01:55:02.849390" elapsed="0.000374"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:02.850256" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0690db0&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-07-28T01:55:02.849942" elapsed="0.000348"/>
</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-07-28T01:55:02.850445" elapsed="0.000277"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:02.851324" 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-07-28T01:55:02.850885" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:02.852027" 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-07-28T01:55:02.851573" elapsed="0.000485"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:03.322405" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:03.322693" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:03.323065" 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-07-28T01:55:02.852200" elapsed="0.470930"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.328314" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:03.323621" elapsed="0.004802"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05ef330&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05ef330&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-07-28T01:55:02.847086" elapsed="0.481518"/>
</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-07-28T01:55:02.843295" elapsed="0.485435"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:55:02.830173" elapsed="0.498638"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.330052" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:03.329411" 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-07-28T01:55:03.334363" 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-07-28T01:55:03.334630" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:03.334207" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:03.335292" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:03.334827" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.335788" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:03.335495" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.336298" 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-07-28T01:55:03.336013" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.336788" 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-07-28T01:55:03.336507" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:03.337673" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:03.336970" elapsed="0.000734"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.338211" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:03.337873" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.338742" 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-07-28T01:55:03.338411" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.339587" 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-07-28T01:55:03.338998" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.340099" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:03.339787" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.340627" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:03.340299" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.341137" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:03.340826" 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-07-28T01:55:03.333819" elapsed="0.007423"/>
</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-07-28T01:55:03.345584" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0691e40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:03.345224" elapsed="0.000389"/>
</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-07-28T01:55:03.345762" 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-07-28T01:55:03.346185" 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-07-28T01:55:03.346590" 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-07-28T01:55:03.347052" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:03.347856" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0693ec0&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-07-28T01:55:03.347584" 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-07-28T01:55:03.348031" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:03.348834" 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-07-28T01:55:03.348431" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:03.349525" 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-07-28T01:55:03.349118" elapsed="0.000437"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:03.823810" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:03.824003" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:03.824376" 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-07-28T01:55:03.349694" elapsed="0.474750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.829739" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:03.825048" elapsed="0.004758"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05ee110&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05ee110&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-07-28T01:55:03.344843" elapsed="0.485058"/>
</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-07-28T01:55:03.341394" elapsed="0.488588"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:55:03.329068" elapsed="0.500965"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.830818" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:03.830410" elapsed="0.000473"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:03.836429" 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-07-28T01:55:03.836677" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:03.836175" elapsed="0.000543"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:03.837705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c3b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:03.836985" elapsed="0.000761"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.838426" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:03.838014" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.839185" 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-07-28T01:55:03.838749" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:03.839929" 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-07-28T01:55:03.839432" elapsed="0.000535"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:03.841186" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:03.840228" elapsed="0.001002"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.842051" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:03.841527" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.842919" 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-07-28T01:55:03.842387" elapsed="0.000610"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.843877" 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-07-28T01:55:03.843232" elapsed="0.000709"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.845108" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:03.844294" elapsed="0.000882"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.845917" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:03.845396" elapsed="0.000633"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:03.846762" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c3b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:03.846247" elapsed="0.000619"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:03.835554" elapsed="0.011394"/>
</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-07-28T01:55:03.852059" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0690f40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:03.851652" elapsed="0.000435"/>
</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-07-28T01:55:03.852235" 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-07-28T01:55:03.852709" 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-07-28T01:55:03.853182" elapsed="0.000317"/>
</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-07-28T01:55:03.853656" elapsed="0.000382"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:03.854555" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0691760&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-07-28T01:55:03.854231" elapsed="0.000352"/>
</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-07-28T01:55:03.854733" elapsed="0.000286"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:03.855624" 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-07-28T01:55:03.855169" elapsed="0.000597"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:03.856399" 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-07-28T01:55:03.855972" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:04.329376" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:04.329631" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:04.329951" 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-07-28T01:55:03.856586" elapsed="0.473431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.335854" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:04.330635" elapsed="0.005322"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6c3b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6c3b0&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-07-28T01:55:03.851237" elapsed="0.484876"/>
</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-07-28T01:55:03.847159" elapsed="0.489090"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:55:03.830218" elapsed="0.506147"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.337633" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:04.336996" elapsed="0.000741"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:04.343402" 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-07-28T01:55:04.343597" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:04.343254" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:04.344243" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f9c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:04.343782" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.344783" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:04.344473" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.345309" 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-07-28T01:55:04.344985" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.345812" 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-07-28T01:55:04.345512" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:04.346702" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:04.346008" elapsed="0.000730"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.347264" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:04.346912" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.347833" 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-07-28T01:55:04.347496" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.348419" 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-07-28T01:55:04.348045" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.349215" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:04.348672" elapsed="0.000592"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.349758" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:04.349422" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.350293" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f9c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:04.349971" 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-07-28T01:55:04.342882" elapsed="0.007522"/>
</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-07-28T01:55:04.354954" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0690680&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:04.354588" 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-07-28T01:55:04.355133" 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-07-28T01:55:04.355599" 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-07-28T01:55:04.356007" 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-07-28T01:55:04.356464" elapsed="0.000416"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:04.357327" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0692f20&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-07-28T01:55:04.357040" 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-07-28T01:55:04.357523" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:04.358321" 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-07-28T01:55:04.357937" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:04.358977" 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-07-28T01:55:04.358564" elapsed="0.000444"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:04.831370" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:04.831630" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:04.831944" 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-07-28T01:55:04.359142" elapsed="0.472864"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.837504" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:04.832587" elapsed="0.005031"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6f9c0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6f9c0&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-07-28T01:55:04.354137" elapsed="0.483632"/>
</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-07-28T01:55:04.350573" elapsed="0.487324"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:55:04.336674" elapsed="0.501304"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.839178" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:04.838599" 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-07-28T01:55:04.843988" 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-07-28T01:55:04.844180" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:04.843833" elapsed="0.000376"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:04.844860" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3b00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:04.844371" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.845445" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:04.845145" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.845934" 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-07-28T01:55:04.845646" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:04.846397" 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-07-28T01:55:04.846117" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:04.847380" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:04.846599" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.847948" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:04.847601" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.848474" 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-07-28T01:55:04.848148" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.849337" 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-07-28T01:55:04.848671" elapsed="0.000711"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.849876" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:04.849562" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.850393" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:04.850076" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:04.850924" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3b00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:04.850607" 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-07-28T01:55:04.843428" elapsed="0.007599"/>
</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-07-28T01:55:04.855408" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6c220&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:04.855046" 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-07-28T01:55:04.855602" elapsed="0.000277"/>
</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-07-28T01:55:04.856032" 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-07-28T01:55:04.856433" 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-07-28T01:55:04.856847" elapsed="0.000386"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:04.857889" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6e160&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-07-28T01:55:04.857488" elapsed="0.000442"/>
</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-07-28T01:55:04.858149" elapsed="0.000384"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:04.859324" 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-07-28T01:55:04.858753" elapsed="0.000665"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:04.860260" 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-07-28T01:55:04.859661" elapsed="0.000720"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:05.331938" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:05.332122" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:05.332412" 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-07-28T01:55:04.860609" elapsed="0.471916"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.337916" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:05.333009" 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 0x7868b05f3b00&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f3b00&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-07-28T01:55:04.854663" elapsed="0.483545"/>
</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-07-28T01:55:04.851181" elapsed="0.487148"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:55:04.838242" elapsed="0.500191"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.339691" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:05.339051" elapsed="0.000748"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:05.344886" 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-07-28T01:55:05.345061" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:05.344730" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:05.345747" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2b60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:05.345245" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.346236" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:05.345932" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.346731" 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-07-28T01:55:05.346428" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.347205" 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-07-28T01:55:05.346918" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:05.348073" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:05.347384" elapsed="0.000720"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.348631" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:05.348280" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.349152" 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-07-28T01:55:05.348829" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.349729" 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-07-28T01:55:05.349359" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.350480" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:05.349939" elapsed="0.000644"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.351082" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:05.350753" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.351629" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2b60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:05.351294" 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-07-28T01:55:05.344332" elapsed="0.007408"/>
</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-07-28T01:55:05.356168" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e6110&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:05.355818" 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-07-28T01:55:05.356344" elapsed="0.000300"/>
</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-07-28T01:55:05.356799" elapsed="0.000257"/>
</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-07-28T01:55:05.357217" elapsed="0.000268"/>
</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-07-28T01:55:05.357681" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:05.358498" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e7420&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-07-28T01:55:05.358193" elapsed="0.000342"/>
</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-07-28T01:55:05.358690" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:05.359484" 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-07-28T01:55:05.359106" elapsed="0.000450"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:05.360097" 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-07-28T01:55:05.359708" elapsed="0.000422"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:05.834142" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:05.834335" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:05.834689" 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-07-28T01:55:05.360272" elapsed="0.474485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.840149" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:05.835230" elapsed="0.005019"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f2b60&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f2b60&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-07-28T01:55:05.355421" elapsed="0.484990"/>
</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-07-28T01:55:05.351893" elapsed="0.488799"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:55:05.338730" elapsed="0.502045"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.842007" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:05.841367" elapsed="0.000849"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:05.845927" 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-07-28T01:55:05.846123" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:05.845774" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:05.846807" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:05.846320" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.847303" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:05.846998" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.847810" 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-07-28T01:55:05.847516" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:05.848333" 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-07-28T01:55:05.848040" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:05.849321" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:05.848545" elapsed="0.000808"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.850124" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:05.849545" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.850690" 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-07-28T01:55:05.850339" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.851218" 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-07-28T01:55:05.850891" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.851749" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:05.851414" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.852286" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:05.851957" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:05.852854" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:05.852524" 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-07-28T01:55:05.845378" elapsed="0.007577"/>
</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-07-28T01:55:05.857388" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6c590&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:05.857015" 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-07-28T01:55:05.857590" 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-07-28T01:55:05.858033" elapsed="0.000315"/>
</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-07-28T01:55:05.858519" 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-07-28T01:55:05.858932" elapsed="0.000381"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:05.859784" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6e2f0&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-07-28T01:55:05.859494" 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-07-28T01:55:05.859971" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:05.860858" 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-07-28T01:55:05.860426" elapsed="0.000502"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:05.861548" 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-07-28T01:55:05.861079" elapsed="0.000501"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:06.335926" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:06.336201" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:06.336654" 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-07-28T01:55:05.861712" elapsed="0.475021"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.342556" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:06.337376" elapsed="0.005291"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f3150&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f3150&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-07-28T01:55:05.856638" elapsed="0.486181"/>
</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-07-28T01:55:05.853112" elapsed="0.489838"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:55:05.841048" elapsed="0.501988"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.344237" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:06.343667" 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-07-28T01:55:06.350591" 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-07-28T01:55:06.350845" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:06.350308" elapsed="0.000584"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:06.351830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:06.351132" elapsed="0.000745"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.352651" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:06.352184" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.353355" 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-07-28T01:55:06.352928" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.354073" 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-07-28T01:55:06.353652" elapsed="0.000461"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:06.355937" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:06.354346" elapsed="0.001640"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.356775" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:06.356231" elapsed="0.000612"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.357573" 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-07-28T01:55:06.357073" elapsed="0.000568"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.358357" 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-07-28T01:55:06.357871" elapsed="0.000553"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.359164" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:06.358697" elapsed="0.000540"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.359924" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:06.359481" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.360721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:06.360211" elapsed="0.000577"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:06.349754" elapsed="0.011126"/>
</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-07-28T01:55:06.367528" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f02c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:06.366929" elapsed="0.000642"/>
</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-07-28T01:55:06.367797" elapsed="0.000406"/>
</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-07-28T01:55:06.368436" elapsed="0.000393"/>
</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-07-28T01:55:06.369055" elapsed="0.000380"/>
</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-07-28T01:55:06.369690" elapsed="0.000528"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:06.370918" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f2fc0&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-07-28T01:55:06.370448" elapsed="0.000512"/>
</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-07-28T01:55:06.371188" elapsed="0.000400"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:06.372427" 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-07-28T01:55:06.371807" elapsed="0.000840"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:06.373559" 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-07-28T01:55:06.372874" elapsed="0.000732"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:06.835915" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:06.836182" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:06.836573" 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-07-28T01:55:06.373812" elapsed="0.462829"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.841279" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:06.837163" elapsed="0.004181"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3729530&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3729530&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-07-28T01:55:06.366303" elapsed="0.475202"/>
</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-07-28T01:55:06.361116" elapsed="0.480474"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:55:06.343295" elapsed="0.498346"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.842483" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:06.842050" elapsed="0.000501"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:06.847848" 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-07-28T01:55:06.848058" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:06.847661" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:06.848765" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a46d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:06.848245" elapsed="0.000551"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.849298" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:06.848959" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.849879" 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-07-28T01:55:06.849543" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:06.850388" 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-07-28T01:55:06.850062" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:06.851760" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:06.850625" elapsed="0.001170"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.852313" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:06.851963" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.852923" 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-07-28T01:55:06.852602" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.853477" 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-07-28T01:55:06.853137" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.854020" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:06.853699" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.854566" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:06.854226" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:06.855118" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a46d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:06.854771" 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-07-28T01:55:06.847222" elapsed="0.007999"/>
</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-07-28T01:55:06.860867" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f3c40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:06.860484" elapsed="0.000412"/>
</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-07-28T01:55:06.861046" elapsed="0.000284"/>
</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-07-28T01:55:06.861502" 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-07-28T01:55:06.861911" 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-07-28T01:55:06.862325" elapsed="0.000370"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:06.863182" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f0e00&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-07-28T01:55:06.862861" elapsed="0.000351"/>
</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-07-28T01:55:06.863370" elapsed="0.000269"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:06.864214" 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-07-28T01:55:06.863801" elapsed="0.000487"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:06.864904" 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-07-28T01:55:06.864440" elapsed="0.000496"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:07.336871" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:07.337619" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:07.337938" 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-07-28T01:55:06.865080" elapsed="0.472945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.344053" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:07.338646" elapsed="0.005522"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a46d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a46d0&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-07-28T01:55:06.860093" elapsed="0.484236"/>
</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-07-28T01:55:06.855427" elapsed="0.489118"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:55:06.841811" elapsed="0.502829"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.345932" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:07.345246" elapsed="0.000806"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:07.351240" 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-07-28T01:55:07.351421" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:07.351091" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:07.352111" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:07.351660" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.352641" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:07.352336" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.353137" 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-07-28T01:55:07.352859" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.353642" 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-07-28T01:55:07.353351" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:07.355932" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:07.353862" elapsed="0.002102"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.356554" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:07.356164" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.357108" 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-07-28T01:55:07.356755" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.357672" 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-07-28T01:55:07.357302" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.358219" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:07.357869" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.358836" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:07.358481" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.359418" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:07.359039" elapsed="0.000438"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:07.350691" elapsed="0.008843"/>
</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-07-28T01:55:07.364255" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372b600&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:07.363836" elapsed="0.000484"/>
</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-07-28T01:55:07.364509" elapsed="0.000316"/>
</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-07-28T01:55:07.364982" 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-07-28T01:55:07.365498" elapsed="0.000307"/>
</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-07-28T01:55:07.365959" elapsed="0.000391"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:07.366838" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372ab10&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-07-28T01:55:07.366523" elapsed="0.000342"/>
</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-07-28T01:55:07.367052" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:07.367929" 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-07-28T01:55:07.367485" elapsed="0.000512"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:07.368661" 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-07-28T01:55:07.368187" elapsed="0.000506"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:07.838006" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:07.838228" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:07.838576" 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-07-28T01:55:07.368829" elapsed="0.469818"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.844616" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:07.839164" elapsed="0.005565"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01ee750&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01ee750&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-07-28T01:55:07.363388" elapsed="0.481493"/>
</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-07-28T01:55:07.359724" elapsed="0.485317"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:55:07.344906" elapsed="0.500232"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.846444" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:07.845792" elapsed="0.000804"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:07.851379" 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-07-28T01:55:07.851574" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:07.851227" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:07.852281" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:07.851793" elapsed="0.000518"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.852798" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:07.852497" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.853279" 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-07-28T01:55:07.852990" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:07.853774" 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-07-28T01:55:07.853479" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:07.855020" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:07.853959" elapsed="0.001095"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.855595" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:07.855224" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.856157" 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-07-28T01:55:07.855831" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.856714" 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-07-28T01:55:07.856359" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.857231" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:07.856910" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.857774" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:07.857430" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:07.858303" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:07.857987" 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-07-28T01:55:07.850843" elapsed="0.007569"/>
</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-07-28T01:55:07.862881" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372b1f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:07.862499" elapsed="0.000411"/>
</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-07-28T01:55:07.863062" elapsed="0.000293"/>
</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-07-28T01:55:07.863540" elapsed="0.000285"/>
</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-07-28T01:55:07.863991" 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-07-28T01:55:07.864407" elapsed="0.000378"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:07.865227" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372a2a0&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-07-28T01:55:07.864943" 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-07-28T01:55:07.865408" elapsed="0.000272"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:07.866250" 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-07-28T01:55:07.865838" elapsed="0.000539"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:07.867004" 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-07-28T01:55:07.866556" elapsed="0.000481"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:08.338891" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:08.339106" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:08.339430" 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-07-28T01:55:07.867171" elapsed="0.472367"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.345407" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:08.340088" elapsed="0.005466"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a6700&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a6700&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-07-28T01:55:07.862106" elapsed="0.483602"/>
</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-07-28T01:55:07.858588" elapsed="0.487256"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:55:07.845424" elapsed="0.500518"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.347255" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:08.346603" elapsed="0.000788"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:08.351628" 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-07-28T01:55:08.351802" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:08.351478" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:08.352518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:08.352026" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.353010" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:08.352718" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.353501" 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-07-28T01:55:08.353202" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.353983" 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-07-28T01:55:08.353700" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:08.355177" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:08.354175" elapsed="0.001035"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.355755" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:08.355387" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.356402" 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-07-28T01:55:08.356075" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.356970" 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-07-28T01:55:08.356632" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.357514" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:08.357173" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.358059" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:08.357729" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.358616" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:08.358266" 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-07-28T01:55:08.351092" elapsed="0.007628"/>
</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-07-28T01:55:08.363145" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03a7920&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:08.362769" 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-07-28T01:55:08.363322" elapsed="0.000300"/>
</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-07-28T01:55:08.363786" elapsed="0.000300"/>
</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-07-28T01:55:08.364249" elapsed="0.000277"/>
</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-07-28T01:55:08.364680" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:08.365490" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a54e0&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-07-28T01:55:08.365188" 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-07-28T01:55:08.365670" elapsed="0.000258"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:08.366493" 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-07-28T01:55:08.366079" elapsed="0.000496"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:08.367159" 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-07-28T01:55:08.366726" elapsed="0.000465"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:08.840737" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:08.841081" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:08.841413" 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-07-28T01:55:08.367324" elapsed="0.474194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.847131" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:08.842016" elapsed="0.005217"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f2070&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f2070&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-07-28T01:55:08.362389" elapsed="0.484991"/>
</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-07-28T01:55:08.358884" elapsed="0.488669"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:55:08.346227" elapsed="0.501413"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.848881" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:08.848245" 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-07-28T01:55:08.852818" 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-07-28T01:55:08.852995" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:08.852668" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:08.853676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d210&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:08.853182" elapsed="0.000529"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.854164" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:08.853875" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.854655" 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-07-28T01:55:08.854358" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:08.855136" 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-07-28T01:55:08.854852" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:08.856391" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:08.855329" elapsed="0.001095"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.856952" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:08.856606" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.857508" 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-07-28T01:55:08.857159" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.858046" 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-07-28T01:55:08.857725" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.858600" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:08.858260" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.859138" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:08.858806" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:08.859688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d210&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:08.859354" 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-07-28T01:55:08.852279" elapsed="0.007521"/>
</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-07-28T01:55:08.864289" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03a4450&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:08.863880" elapsed="0.000439"/>
</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-07-28T01:55:08.864502" 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-07-28T01:55:08.864942" 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-07-28T01:55:08.865388" elapsed="0.000285"/>
</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-07-28T01:55:08.865830" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:08.866649" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a6890&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-07-28T01:55:08.866340" elapsed="0.000338"/>
</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-07-28T01:55:08.866829" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:08.867680" 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-07-28T01:55:08.867242" elapsed="0.000511"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:08.868385" 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-07-28T01:55:08.867905" elapsed="0.000520"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:09.343415" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:09.343718" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:09.344110" 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-07-28T01:55:08.868579" elapsed="0.475597"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.350977" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:09.344893" elapsed="0.006189"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6d210&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6d210&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-07-28T01:55:08.863506" elapsed="0.487792"/>
</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-07-28T01:55:08.859953" elapsed="0.491492"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:55:08.847902" elapsed="0.503834"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.353341" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:09.352592" elapsed="0.001126"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:09.357642" 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-07-28T01:55:09.357823" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:09.357442" elapsed="0.000449"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:09.358590" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e4d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:09.358048" elapsed="0.000570"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.359145" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:09.358813" elapsed="0.000378"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.359680" 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-07-28T01:55:09.359348" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.360171" 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-07-28T01:55:09.359892" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:09.361306" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:09.360387" elapsed="0.000950"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.361899" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:09.361557" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.362444" 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-07-28T01:55:09.362096" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.363012" 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-07-28T01:55:09.362658" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.363569" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:09.363210" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.364156" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:09.363807" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.364827" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e4d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:09.364394" elapsed="0.000476"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:09.357027" elapsed="0.007935"/>
</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-07-28T01:55:09.369707" level="INFO">${req} = &lt;Element 'flow' at 0x7868b37325c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:09.369274" elapsed="0.000462"/>
</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-07-28T01:55:09.369885" elapsed="0.000315"/>
</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-07-28T01:55:09.370393" elapsed="0.000267"/>
</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-07-28T01:55:09.370813" elapsed="0.000438"/>
</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-07-28T01:55:09.371441" elapsed="0.000406"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:09.372317" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1fda2a0&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-07-28T01:55:09.372041" 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-07-28T01:55:09.372569" elapsed="0.000254"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:09.373534" 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-07-28T01:55:09.373058" elapsed="0.000587"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:09.374325" 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-07-28T01:55:09.373829" elapsed="0.000529"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:09.842948" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:09.843154" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:09.843539" 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-07-28T01:55:09.374505" elapsed="0.469104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.848093" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:09.844200" elapsed="0.003956"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6e4d0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6e4d0&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-07-28T01:55:09.368874" elapsed="0.479387"/>
</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-07-28T01:55:09.365119" elapsed="0.483267"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:55:09.352077" elapsed="0.496365"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.849305" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:09.848890" elapsed="0.000495"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:09.855044" 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-07-28T01:55:09.855324" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:09.854786" elapsed="0.000582"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:09.856363" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692cf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:09.855616" elapsed="0.000789"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.857201" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:09.856736" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.857818" 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-07-28T01:55:09.857495" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:09.858329" 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-07-28T01:55:09.858007" elapsed="0.000348"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:09.859524" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:09.858555" elapsed="0.001000"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.860139" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:09.859763" elapsed="0.000477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.860841" 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-07-28T01:55:09.860397" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.861447" 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-07-28T01:55:09.861085" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.862014" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:09.861672" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.862628" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:09.862260" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:09.863197" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692cf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:09.862840" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:09.854174" elapsed="0.009121"/>
</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-07-28T01:55:09.868744" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e6660&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:09.868285" elapsed="0.000488"/>
</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-07-28T01:55:09.868923" elapsed="0.000316"/>
</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-07-28T01:55:09.869403" elapsed="0.000307"/>
</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-07-28T01:55:09.869901" elapsed="0.000296"/>
</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-07-28T01:55:09.870383" elapsed="0.000419"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:09.871310" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e7420&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-07-28T01:55:09.870992" elapsed="0.000349"/>
</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-07-28T01:55:09.871510" elapsed="0.000297"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:09.872440" 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-07-28T01:55:09.871991" elapsed="0.000536"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:09.873236" 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-07-28T01:55:09.872756" elapsed="0.000512"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:10.360126" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:10.360523" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:10.360903" 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-07-28T01:55:09.873410" elapsed="0.487560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.366258" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:10.361446" elapsed="0.004876"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b0692cf0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b0692cf0&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-07-28T01:55:09.867846" elapsed="0.498646"/>
</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-07-28T01:55:09.863505" elapsed="0.503069"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:55:09.848658" elapsed="0.517969"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.367530" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:10.367071" elapsed="0.000524"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:10.372907" 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-07-28T01:55:10.373172" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:10.372600" elapsed="0.000614"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:10.374011" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eed90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:10.373480" elapsed="0.000560"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.374532" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:10.374196" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.374999" 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-07-28T01:55:10.374724" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.375523" 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-07-28T01:55:10.375180" elapsed="0.000370"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:10.376528" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:10.375706" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.377517" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:10.376762" elapsed="0.000862"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.378181" 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-07-28T01:55:10.377817" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.378759" 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-07-28T01:55:10.378412" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.379588" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:10.378993" elapsed="0.000680"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.380193" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:10.379830" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.380841" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eed90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:10.380440" 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-07-28T01:55:10.372081" elapsed="0.008863"/>
</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-07-28T01:55:10.385715" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0691b70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:10.385309" elapsed="0.000434"/>
</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-07-28T01:55:10.385902" 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-07-28T01:55:10.386362" elapsed="0.000307"/>
</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-07-28T01:55:10.386863" 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-07-28T01:55:10.387311" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:10.388230" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0692cf0&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-07-28T01:55:10.387899" elapsed="0.000359"/>
</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-07-28T01:55:10.388413" elapsed="0.000316"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:10.389319" 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-07-28T01:55:10.388893" elapsed="0.000493"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:10.389997" 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-07-28T01:55:10.389550" elapsed="0.000479"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:10.847335" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:10.847626" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:10.847972" 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-07-28T01:55:10.390171" elapsed="0.457867"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.852188" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:10.848575" elapsed="0.003676"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01eed90&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01eed90&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-07-28T01:55:10.384903" elapsed="0.467436"/>
</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-07-28T01:55:10.381140" elapsed="0.471358"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:55:10.366841" elapsed="0.485712"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.853404" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:10.852994" elapsed="0.000495"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:10.859016" 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-07-28T01:55:10.859352" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:10.858812" elapsed="0.000631"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:10.860403" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee570&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:10.859683" elapsed="0.000762"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.861244" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:10.860729" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.861917" 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-07-28T01:55:10.861602" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:10.862416" 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-07-28T01:55:10.862103" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:10.863730" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:10.862611" elapsed="0.001151"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.864436" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:10.863927" elapsed="0.000586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.865094" 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-07-28T01:55:10.864722" elapsed="0.000454"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.865710" 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-07-28T01:55:10.865335" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.866405" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:10.865944" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.866975" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:10.866653" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:10.867527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee570&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:10.867189" 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-07-28T01:55:10.858213" elapsed="0.009422"/>
</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-07-28T01:55:10.873273" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372a9d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:10.872702" elapsed="0.000621"/>
</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-07-28T01:55:10.873556" elapsed="0.000398"/>
</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-07-28T01:55:10.874169" elapsed="0.000417"/>
</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-07-28T01:55:10.874809" 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-07-28T01:55:10.875398" elapsed="0.000534"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:10.876596" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372b1f0&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-07-28T01:55:10.876166" elapsed="0.000469"/>
</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-07-28T01:55:10.876856" elapsed="0.000421"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:10.878133" 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-07-28T01:55:10.877523" elapsed="0.000776"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:10.879201" 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-07-28T01:55:10.878550" elapsed="0.000698"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:11.349434" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:11.349679" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:11.349971" 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-07-28T01:55:10.879438" elapsed="0.470594"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.355106" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:11.350515" elapsed="0.004689"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01ee570&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01ee570&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-07-28T01:55:10.872151" elapsed="0.483190"/>
</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-07-28T01:55:10.867789" elapsed="0.487705"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:55:10.852725" elapsed="0.502854"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.356712" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:11.356121" 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-07-28T01:55:11.361961" 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-07-28T01:55:11.362181" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:11.361762" elapsed="0.000458"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:11.363063" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a6b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:11.362429" elapsed="0.000673"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.363732" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:11.363315" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.364357" 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-07-28T01:55:11.363979" elapsed="0.000414"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.365000" 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-07-28T01:55:11.364624" elapsed="0.000412"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:11.366297" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:11.365287" elapsed="0.001041"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.366837" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:11.366505" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.367401" 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-07-28T01:55:11.367088" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.367923" 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-07-28T01:55:11.367610" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.368422" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:11.368115" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.368941" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:11.368634" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.369527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a6b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:11.369180" 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-07-28T01:55:11.361252" elapsed="0.008374"/>
</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-07-28T01:55:11.374151" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0693a60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:11.373796" 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-07-28T01:55:11.374323" 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-07-28T01:55:11.374793" 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-07-28T01:55:11.375210" elapsed="0.000270"/>
</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-07-28T01:55:11.375632" elapsed="0.000353"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:11.376407" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0691ad0&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-07-28T01:55:11.376139" 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-07-28T01:55:11.376597" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:11.377556" 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-07-28T01:55:11.377088" elapsed="0.000537"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:11.378398" 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-07-28T01:55:11.377775" elapsed="0.000664"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:11.850300" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:11.850636" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:11.850933" 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-07-28T01:55:11.378595" elapsed="0.472403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.856567" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:11.851450" elapsed="0.005246"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a394a6b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a394a6b0&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-07-28T01:55:11.373422" elapsed="0.483428"/>
</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-07-28T01:55:11.369788" elapsed="0.487189"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:55:11.355826" elapsed="0.501233"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.858446" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:11.857758" elapsed="0.000837"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:11.866194" 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-07-28T01:55:11.866359" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:11.866044" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:11.867010" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38404a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:11.866565" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.867499" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:11.867196" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.867979" 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-07-28T01:55:11.867681" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:11.868485" 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-07-28T01:55:11.868184" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:11.869645" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:11.868669" elapsed="0.001009"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.870232" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:11.869863" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.870769" 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-07-28T01:55:11.870436" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.871302" 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-07-28T01:55:11.870968" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.871828" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:11.871518" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.872355" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:11.872029" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:11.872890" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38404a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:11.872575" 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-07-28T01:55:11.865674" elapsed="0.007317"/>
</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-07-28T01:55:11.877492" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3948860&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:11.877085" elapsed="0.000445"/>
</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-07-28T01:55:11.877682" 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-07-28T01:55:11.878106" 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-07-28T01:55:11.878567" 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-07-28T01:55:11.878996" elapsed="0.000405"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:11.879871" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069bce0&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-07-28T01:55:11.879578" 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-07-28T01:55:11.880053" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:11.880856" 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-07-28T01:55:11.880465" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:11.881531" 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-07-28T01:55:11.881072" elapsed="0.000490"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:12.351644" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:12.351828" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:12.352114" 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-07-28T01:55:11.881694" elapsed="0.470482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.357310" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:12.352678" elapsed="0.004732"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a38404a0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a38404a0&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-07-28T01:55:11.876720" elapsed="0.480859"/>
</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-07-28T01:55:11.873163" elapsed="0.484541"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:55:11.857408" elapsed="0.500377"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.358926" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:12.358325" 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-07-28T01:55:12.364536" 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-07-28T01:55:12.364766" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:12.364372" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:12.365449" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38417b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:12.364951" elapsed="0.000549"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.365959" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:12.365667" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.366410" 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-07-28T01:55:12.366138" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.366880" 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-07-28T01:55:12.366606" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:12.367985" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:12.367056" elapsed="0.000960"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.368543" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:12.368177" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.369054" 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-07-28T01:55:12.368743" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.369592" 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-07-28T01:55:12.369260" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.370114" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:12.369789" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.370672" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:12.370340" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.371182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38417b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:12.370871" 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-07-28T01:55:12.364014" elapsed="0.007264"/>
</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-07-28T01:55:12.375641" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372a250&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:12.375263" 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-07-28T01:55:12.375816" 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-07-28T01:55:12.376231" 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-07-28T01:55:12.376635" 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-07-28T01:55:12.377025" elapsed="0.000346"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:12.377824" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0691030&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-07-28T01:55:12.377553" 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-07-28T01:55:12.377998" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:12.378781" 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-07-28T01:55:12.378386" elapsed="0.000496"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:12.379481" 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-07-28T01:55:12.379029" elapsed="0.000485"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:12.852584" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:12.852781" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:12.853101" 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-07-28T01:55:12.379646" elapsed="0.473524"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.858808" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:12.853761" elapsed="0.005154"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a38417b0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a38417b0&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-07-28T01:55:12.374901" elapsed="0.484179"/>
</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-07-28T01:55:12.371433" elapsed="0.487776"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:55:12.358030" elapsed="0.501260"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.860605" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:12.859935" elapsed="0.000792"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:12.865369" 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-07-28T01:55:12.865561" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:12.865185" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:12.866209" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843ce0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:12.865748" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.866714" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:12.866398" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.867175" 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-07-28T01:55:12.866896" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:12.867648" 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-07-28T01:55:12.867354" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:12.870087" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:12.869332" elapsed="0.000788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.870648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:12.870288" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.871172" 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-07-28T01:55:12.870851" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.871771" 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-07-28T01:55:12.871428" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.872287" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:12.871973" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.872828" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:12.872505" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:12.873442" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843ce0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:12.873032" 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-07-28T01:55:12.864810" elapsed="0.008762"/>
</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-07-28T01:55:12.877849" level="INFO">${req} = &lt;Element 'flow' at 0x7868a394b3d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:12.877489" 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-07-28T01:55:12.878023" 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-07-28T01:55:12.878439" 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-07-28T01:55:12.878843" 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-07-28T01:55:12.879239" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:12.880011" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a39482c0&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-07-28T01:55:12.879744" 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-07-28T01:55:12.880184" elapsed="0.000242"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:12.880966" 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-07-28T01:55:12.880588" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:12.881636" 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-07-28T01:55:12.881177" elapsed="0.000490"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:13.354327" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:13.354686" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:13.355007" 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-07-28T01:55:12.881796" elapsed="0.473274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.360514" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:13.355596" elapsed="0.005033"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3843ce0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3843ce0&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-07-28T01:55:12.877099" elapsed="0.483673"/>
</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-07-28T01:55:12.873726" elapsed="0.487170"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:55:12.859621" elapsed="0.501356"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.362241" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:13.361656" elapsed="0.000687"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:13.367840" 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-07-28T01:55:13.368089" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:13.367596" elapsed="0.000538"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:13.369101" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee200&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:13.368380" elapsed="0.000765"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.369890" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:13.369429" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.370640" 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-07-28T01:55:13.370179" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.371326" 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-07-28T01:55:13.370916" elapsed="0.000450"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:13.373348" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:13.371618" elapsed="0.001788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.374207" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:13.373690" elapsed="0.000583"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.374801" 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-07-28T01:55:13.374484" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.375336" 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-07-28T01:55:13.375016" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.375858" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:13.375551" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.376370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:13.376058" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.376900" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee200&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:13.376586" 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-07-28T01:55:13.366990" elapsed="0.010015"/>
</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-07-28T01:55:13.381678" level="INFO">${req} = &lt;Element 'flow' at 0x7868a394b0b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:13.381242" elapsed="0.000465"/>
</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-07-28T01:55:13.381860" 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-07-28T01:55:13.382292" elapsed="0.000287"/>
</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-07-28T01:55:13.382841" elapsed="0.000270"/>
</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-07-28T01:55:13.383264" elapsed="0.000386"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:13.384088" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a394bf10&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-07-28T01:55:13.383808" 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-07-28T01:55:13.384266" elapsed="0.000266"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:13.385114" 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-07-28T01:55:13.384683" elapsed="0.000510"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:13.385866" 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-07-28T01:55:13.385410" elapsed="0.000487"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:13.855277" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:13.855506" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:13.855872" 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-07-28T01:55:13.386042" elapsed="0.469894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.861888" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:13.856576" elapsed="0.005493"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b01ee200&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b01ee200&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-07-28T01:55:13.380833" elapsed="0.481378"/>
</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-07-28T01:55:13.377217" elapsed="0.485187"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:55:13.361233" elapsed="0.501285"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.864062" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:13.863312" elapsed="0.000858"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:13.869439" 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-07-28T01:55:13.869619" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:13.869245" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:13.870342" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06927a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:13.869839" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.870911" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:13.870578" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.871411" 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-07-28T01:55:13.871128" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:13.871923" 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-07-28T01:55:13.871609" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:13.873212" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:13.872333" elapsed="0.000911"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.873804" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:13.873419" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.874358" 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-07-28T01:55:13.874004" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.874886" 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-07-28T01:55:13.874569" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.875473" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:13.875121" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.876028" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:13.875676" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:13.876622" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06927a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:13.876228" elapsed="0.000438"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:13.868848" elapsed="0.007875"/>
</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-07-28T01:55:13.881423" level="INFO">${req} = &lt;Element 'flow' at 0x7868a394a110&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:13.880989" elapsed="0.000476"/>
</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-07-28T01:55:13.881651" 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-07-28T01:55:13.882103" elapsed="0.000306"/>
</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-07-28T01:55:13.882579" elapsed="0.000252"/>
</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-07-28T01:55:13.883024" elapsed="0.000385"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:13.883895" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a394bf10&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-07-28T01:55:13.883580" elapsed="0.000343"/>
</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-07-28T01:55:13.884073" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:13.885006" 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-07-28T01:55:13.884564" elapsed="0.000550"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:13.885816" 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-07-28T01:55:13.885301" elapsed="0.000547"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:14.356596" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:14.356789" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:14.357137" 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-07-28T01:55:13.885981" elapsed="0.471219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.363585" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:14.357877" elapsed="0.005808"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b06927a0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b06927a0&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-07-28T01:55:13.880590" elapsed="0.483233"/>
</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-07-28T01:55:13.876912" elapsed="0.487030"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:55:13.862939" elapsed="0.501082"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.365372" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:14.364597" elapsed="0.000980"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:14.371565" 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-07-28T01:55:14.371788" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:14.371301" elapsed="0.000528"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:14.372820" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:14.372090" elapsed="0.000773"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.373691" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:14.373083" elapsed="0.000649"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.374476" 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-07-28T01:55:14.373950" elapsed="0.000579"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.375254" 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-07-28T01:55:14.374768" elapsed="0.000524"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:14.376732" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:14.375588" elapsed="0.001189"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.377732" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:14.377055" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.378645" 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-07-28T01:55:14.378145" elapsed="0.000545"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.379160" 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-07-28T01:55:14.378844" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.379742" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:14.379396" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.380292" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:14.379940" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.380825" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:14.380512" 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-07-28T01:55:14.370720" elapsed="0.010203"/>
</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-07-28T01:55:14.385661" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6e9d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:14.385195" elapsed="0.000496"/>
</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-07-28T01:55:14.385841" elapsed="0.000311"/>
</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-07-28T01:55:14.386306" 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-07-28T01:55:14.386756" elapsed="0.000421"/>
</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-07-28T01:55:14.387328" elapsed="0.000534"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:14.388333" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e4bd0&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-07-28T01:55:14.388020" elapsed="0.000341"/>
</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-07-28T01:55:14.388526" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:14.389479" 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-07-28T01:55:14.388964" elapsed="0.000602"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:14.390162" 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-07-28T01:55:14.389721" elapsed="0.000473"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:14.857715" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:14.858014" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:14.858355" 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-07-28T01:55:14.390326" elapsed="0.468094"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.863600" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:14.858973" elapsed="0.004693"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a36e6110&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a36e6110&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-07-28T01:55:14.384790" elapsed="0.478967"/>
</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-07-28T01:55:14.381114" elapsed="0.482770"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:55:14.364268" elapsed="0.499669"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.864818" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:14.864360" elapsed="0.000522"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:14.870300" 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-07-28T01:55:14.870565" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:14.870046" elapsed="0.000568"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:14.871470" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d8f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:14.870971" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.871987" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:14.871694" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.872542" 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-07-28T01:55:14.872211" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:14.873039" 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-07-28T01:55:14.872724" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:14.874036" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:14.873221" elapsed="0.000848"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.874620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:14.874235" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.875179" 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-07-28T01:55:14.874820" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.875746" 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-07-28T01:55:14.875409" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.876291" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:14.875941" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.876852" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:14.876540" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:14.877436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d8f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:14.877089" 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-07-28T01:55:14.869548" elapsed="0.008044"/>
</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-07-28T01:55:14.882407" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372bf60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:14.882015" elapsed="0.000421"/>
</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-07-28T01:55:14.882602" 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-07-28T01:55:14.883068" 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-07-28T01:55:14.883607" 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-07-28T01:55:14.884050" elapsed="0.000344"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:14.884914" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372b600&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-07-28T01:55:14.884602" elapsed="0.000340"/>
</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-07-28T01:55:14.885092" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:14.885979" 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-07-28T01:55:14.885560" elapsed="0.000484"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:14.886689" 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-07-28T01:55:14.886226" elapsed="0.000495"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:15.359098" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:15.359336" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:15.359695" 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-07-28T01:55:14.886891" elapsed="0.472870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.365897" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:15.360326" elapsed="0.005671"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868a3f6d8f0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868a3f6d8f0&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-07-28T01:55:14.881619" elapsed="0.484581"/>
</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-07-28T01:55:14.877742" elapsed="0.488584"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:55:14.864101" elapsed="0.502304"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.367845" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:15.367175" elapsed="0.000838"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:15.373286" 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-07-28T01:55:15.373489" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:15.373112" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:15.374259" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2ed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:15.373778" elapsed="0.000529"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.374816" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:15.374516" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.375274" 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-07-28T01:55:15.374998" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.375742" 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-07-28T01:55:15.375451" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:15.376526" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:15.375920" elapsed="0.000637"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.377057" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:15.376720" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.377606" 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-07-28T01:55:15.377269" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.378114" 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-07-28T01:55:15.377802" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.378622" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:15.378305" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.379130" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:15.378820" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.379651" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2ed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:15.379328" 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-07-28T01:55:15.372755" elapsed="0.006994"/>
</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-07-28T01:55:15.384256" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03a60c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:15.383882" elapsed="0.000402"/>
</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-07-28T01:55:15.384481" 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-07-28T01:55:15.384942" 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-07-28T01:55:15.385367" elapsed="0.000302"/>
</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-07-28T01:55:15.385820" elapsed="0.000378"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:15.386679" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a74c0&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-07-28T01:55:15.386353" elapsed="0.000354"/>
</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-07-28T01:55:15.386856" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:15.387655" 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-07-28T01:55:15.387292" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:15.388362" 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-07-28T01:55:15.387905" elapsed="0.000489"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:15.860612" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:15.860786" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:15.861138" 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-07-28T01:55:15.388541" elapsed="0.472661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.866910" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:15.861856" elapsed="0.005154"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b05f2ed0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b05f2ed0&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-07-28T01:55:15.383523" elapsed="0.483626"/>
</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-07-28T01:55:15.379900" elapsed="0.487449"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:55:15.366811" elapsed="0.500623"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.868817" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:15.868074" elapsed="0.000852"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:15.876018" 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-07-28T01:55:15.876225" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:15.875871" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:15.877066" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:15.876406" elapsed="0.000726"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.877602" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:15.877288" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.878098" 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-07-28T01:55:15.877818" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:15.878648" 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-07-28T01:55:15.878315" elapsed="0.000362"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:15.879595" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:15.878831" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.880166" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:15.879794" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.880771" 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-07-28T01:55:15.880401" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.881327" 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-07-28T01:55:15.880971" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.881925" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:15.881615" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.882556" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:15.882226" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:15.883110" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:15.882758" 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-07-28T01:55:15.875478" elapsed="0.007732"/>
</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-07-28T01:55:15.887992" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f3830&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:15.887602" elapsed="0.000418"/>
</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-07-28T01:55:15.888167" 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-07-28T01:55:15.888609" elapsed="0.000280"/>
</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-07-28T01:55:15.889039" elapsed="0.000285"/>
</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-07-28T01:55:15.889516" elapsed="0.000385"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:15.890332" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f0f40&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-07-28T01:55:15.890057" 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-07-28T01:55:15.890568" elapsed="0.000293"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:15.891650" 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-07-28T01:55:15.891173" elapsed="0.000543"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:15.892310" 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-07-28T01:55:15.891866" elapsed="0.000475"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:16.361213" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:16.361391" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:16.361782" 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-07-28T01:55:15.892526" elapsed="0.469321"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.367712" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:16.362511" elapsed="0.005305"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a7f10&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a7f10&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-07-28T01:55:15.887227" elapsed="0.480734"/>
</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-07-28T01:55:15.883361" elapsed="0.484723"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:55:15.867712" elapsed="0.500600"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.369073" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:16.368783" elapsed="0.000336"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:16.373017" 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-07-28T01:55:16.373185" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:16.372865" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:16.373937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6ca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:16.373409" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:16.374509" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:16.374162" elapsed="0.000374"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:16.375002" 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-07-28T01:55:16.374690" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:16.375553" 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-07-28T01:55:16.375222" elapsed="0.000358"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:16.376511" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:16.375734" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.377079" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:16.376709" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.377641" 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-07-28T01:55:16.377309" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.378224" 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-07-28T01:55:16.377872" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.378786" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:16.378420" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.379335" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:16.379027" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.379945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6ca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:16.379591" 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-07-28T01:55:16.372404" elapsed="0.007638"/>
</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-07-28T01:55:16.385098" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3728db0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:16.384716" 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-07-28T01:55:16.385319" 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-07-28T01:55:16.385770" 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-07-28T01:55:16.386201" elapsed="0.000308"/>
</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-07-28T01:55:16.386661" elapsed="0.000387"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:16.387637" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6ca40&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-07-28T01:55:16.387299" elapsed="0.000365"/>
</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-07-28T01:55:16.387814" elapsed="0.000290"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:16.388703" 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-07-28T01:55:16.388255" elapsed="0.000546"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:16.389380" 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-07-28T01:55:16.388955" elapsed="0.000456"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:16.862587" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:16.862771" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:add-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:16.863142" 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-07-28T01:55:16.389562" elapsed="0.473650"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.869406" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:16.863859" elapsed="0.005702"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deploys a flow specified by given flow details (${node_id}, &lt;Element 'flow' at 0x7868b03a6ca0&gt;) using add-flow operation.
&lt;Element 'flow' at 0x7868b03a6ca0&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-07-28T01:55:16.384254" elapsed="0.485396"/>
</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-07-28T01:55:16.380229" elapsed="0.489515"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:55:16.368598" elapsed="0.501187"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:54:51.738423" elapsed="25.131405"/>
</for>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.870349" level="INFO">Length is 50.</msg>
<msg time="2026-07-28T01:55:16.870428" 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-07-28T01:55:16.870002" elapsed="0.000453"/>
</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-07-28T01:55:16.887413" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:16.892436" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/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-61","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":0,"nanosecond":210000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":714000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":6,"nanosecond":233000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":17,"nanosecond":264000000}},"flags":""},{"id":"#UF$TABLE*2-26","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":17,"nanosecond":767000000}},"flags":""},{"id":"#UF$TABLE*2-48","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":6,"nanosecond":732000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":16,"nanosecond":262000000}},"flags":""},{"id":"#UF$TABLE*2-28","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":16,"nanosecond":761000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":8,"nanosecond":226000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":19,"nanosecond":268000000}},"flags":""},{"id":"#UF$TABLE*2-44","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":8,"nanosecond":736000000}},"flags":""},{"id":"#UF$TABLE*2-22","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":19,"nanosecond":772000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":7,"nanosecond":231000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":18,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-46","table_id":2,"priority":103,"cookie_mask":"0","idle-timeout":0,"match":{"ethernet-match":{"ethernet-source":{"a... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:16.893139" 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-07-28T01:55:16.874987" elapsed="0.018219"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.899527" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-61","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":0,"nanosecond":210000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":714000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":6,"nanosecond":233000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":17,"nanosecond":264000000}},"flags":""},{"id":"#UF$TABLE*2-26","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":17,"nanosecond":767000000}},"flags":""},{"id":"#UF$TABLE*2-48","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":6,"nanosecond":732000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":16,"nanosecond":262000000}},"flags":""},{"id":"#UF$TABLE*2-28","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":16,"nanosecond":761000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":8,"nanosecond":226000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":19,"nanosecond":268000000}},"flags":""},{"id":"#UF$TABLE*2-44","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":8,"nanosecond":736000000}},"flags":""},{"id":"#UF$TABLE*2-22","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":19,"nanosecond":772000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":7,"nanosecond":231000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":18,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-46","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":7,"nanosecond":735000000}},"flags":""},{"id":"#UF$TABLE*2-24","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":18,"nanosecond":765000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":10,"nanosecond":241000000}},"flags":""},{"id":"#UF$TABLE*2-40","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":10,"nanosecond":739000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":9,"nanosecond":241000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":20,"nanosecond":269000000}},"flags":""},{"id":"#UF$TABLE*2-42","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":9,"nanosecond":739000000}},"flags":""},{"id":"#UF$TABLE*2-20","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":20,"nanosecond":770000000}},"flags":""},{"id":"#UF$TABLE*2-50","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":5,"nanosecond":731000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":21,"nanosecond":275000000}},"flags":""},{"id":"#UF$TABLE*2-16","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":22,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-38","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":11,"nanosecond":748000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":1,"nanosecond":214000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":12,"nanosecond":251000000}},"flags":""},{"id":"#UF$TABLE*2-18","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":21,"nanosecond":775000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":11,"nanosecond":251000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":22,"nanosecond":277000000}},"flags":""},{"id":"#UF$TABLE*2-34","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":13,"nanosecond":754000000}},"flags":""},{"id":"#UF$TABLE*2-56","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":2,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":3,"nanosecond":221000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":14,"nanosecond":249000000}},"flags":""},{"id":"#UF$TABLE*2-58","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":1,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-36","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":12,"nanosecond":754000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":13,"nanosecond":249000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":2,"nanosecond":221000000}},"flags":""},{"id":"#UF$TABLE*2-52","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":4,"nanosecond":726000000}},"flags":""},{"id":"#UF$TABLE*2-30","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":15,"nanosecond":759000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":5,"nanosecond":225000000}},"flags":""},{"id":"#UF$TABLE*2-54","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":3,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-32","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":14,"nanosecond":756000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":4,"nanosecond":208000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":15,"nanosecond":255000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":46,"packets-matched":"0"}}]}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:16.893639" elapsed="0.006376"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:55:16.904834" level="INFO">Item found from container 46 times.</msg>
<msg time="2026-07-28T01:55:16.905260" level="FAIL">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-61","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":0,"nanosecond":210000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":714000000}},"flags":""},{"id":"#UF$TABLE*2-49","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":6,"nanosecond":233000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":17,"nanosecond":264000000}},"flags":""},{"id":"#UF$TABLE*2-26","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":17,"nanosecond":767000000}},"flags":""},{"id":"#UF$TABLE*2-48","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":6,"nanosecond":732000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":16,"nanosecond":262000000}},"flags":""},{"id":"#UF$TABLE*2-28","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":16,"nanosecond":761000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":8,"nanosecond":226000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":19,"nanosecond":268000000}},"flags":""},{"id":"#UF$TABLE*2-44","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":8,"nanosecond":736000000}},"flags":""},{"id":"#UF$TABLE*2-22","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":19,"nanosecond":772000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":7,"nanosecond":231000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":18,"nanosecond":266000000}},"flags":""},{"id":"#UF$TABLE*2-46","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":7,"nanosecond":735000000}},"flags":""},{"id":"#UF$TABLE*2-24","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":18,"nanosecond":765000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":10,"nanosecond":241000000}},"flags":""},{"id":"#UF$TABLE*2-40","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":10,"nanosecond":739000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":9,"nanosecond":241000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":20,"nanosecond":269000000}},"flags":""},{"id":"#UF$TABLE*2-42","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":9,"nanosecond":739000000}},"flags":""},{"id":"#UF$TABLE*2-20","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":20,"nanosecond":770000000}},"flags":""},{"id":"#UF$TABLE*2-50","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":5,"nanosecond":731000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":21,"nanosecond":275000000}},"flags":""},{"id":"#UF$TABLE*2-16","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":22,"nanosecond":814000000}},"flags":""},{"id":"#UF$TABLE*2-38","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":11,"nanosecond":748000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":1,"nanosecond":214000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":12,"nanosecond":251000000}},"flags":""},{"id":"#UF$TABLE*2-18","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":21,"nanosecond":775000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":11,"nanosecond":251000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":22,"nanosecond":277000000}},"flags":""},{"id":"#UF$TABLE*2-34","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":13,"nanosecond":754000000}},"flags":""},{"id":"#UF$TABLE*2-56","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":2,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":3,"nanosecond":221000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":14,"nanosecond":249000000}},"flags":""},{"id":"#UF$TABLE*2-58","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":1,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-36","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":12,"nanosecond":754000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":13,"nanosecond":249000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":2,"nanosecond":221000000}},"flags":""},{"id":"#UF$TABLE*2-52","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":4,"nanosecond":726000000}},"flags":""},{"id":"#UF$TABLE*2-30","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":15,"nanosecond":759000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":5,"nanosecond":225000000}},"flags":""},{"id":"#UF$TABLE*2-54","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":3,"nanosecond":718000000}},"flags":""},{"id":"#UF$TABLE*2-32","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":14,"nanosecond":756000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":4,"nanosecond":208000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":15,"nanosecond":255000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":46,"packets-matched":"0"}}]}' contains 'priority' 46 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-07-28T01:55:16.900287" elapsed="0.005402">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-61","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":0,"nanosecond":210000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":714000000}},"flags":""},{"id":"#UF$TABLE*2-49","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"ma...
    [ Message content over the limit has been removed. ]
...ut-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":14,"nanosecond":756000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":4,"nanosecond":208000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":15,"nanosecond":255000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":46,"packets-matched":"0"}}]}' contains 'priority' 46 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-07-28T01:55:16.874592" elapsed="0.031294">'{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-61","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":0,"nanosecond":210000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":714000000}},"flags":""},{"id":"#UF$TABLE*2-49","table_id":2,"priority":106,"cookie_mask":"0","idle-timeout":0,"ma...
    [ Message content over the limit has been removed. ]
...ut-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":14,"nanosecond":756000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":4,"nanosecond":208000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":15,"nanosecond":255000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"0","active-flows":46,"packets-matched":"0"}}]}' contains 'priority' 46 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-07-28T01:55:18.927277" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:18.931734" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/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":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":9,"nanosecond":262000000}},"flags":""},{"id":"#UF$TABLE*2-48","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":9,"nanosecond":761000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":11,"nanosecond":255000000}},"flags":""},{"id":"#UF$TABLE*2-44","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":11,"nanosecond":765000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":10,"nanosecond":260000000}},"flags":""},{"id":"#UF$TABLE*2-46","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":10,"nanosecond":764000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":13,"nanosecond":270000000}},"flags":""},{"id":"#UF$TABLE*2-40","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":13,"nanosecond":768000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":12,"nanosecond":270000000}},"flags":""},{"id":"#UF$TABLE*2-42","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":12,"nanosecond":768000000}},"flags":""},{"id":"#UF$TABLE*2-38","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":14,"nanosecond":777000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":15,"nanosecond":280000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":14,"nanosecond":280000000}},"flags":""},{"id":"#UF$TABLE*2-34","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":16,"nanosecond":783000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":17,"nanosecond":278000000}},"flags":""},{"id":"#UF$TABLE*2-36","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":15,"nanosecond":783000000}},"flags":""},{"id":"#UF$TABLE*2-35","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,"open... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:18.932281" 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-07-28T01:55:18.915097" elapsed="0.017249"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:18.939897" level="INFO">{"flow-node-inventory:table":[{"id":2,"flow":[{"id":"#UF$TABLE*2-49","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":9,"nanosecond":262000000}},"flags":""},{"id":"#UF$TABLE*2-48","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":9,"nanosecond":761000000}},"flags":""},{"id":"#UF$TABLE*2-45","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":11,"nanosecond":255000000}},"flags":""},{"id":"#UF$TABLE*2-44","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":11,"nanosecond":765000000}},"flags":""},{"id":"#UF$TABLE*2-47","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":10,"nanosecond":260000000}},"flags":""},{"id":"#UF$TABLE*2-46","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":10,"nanosecond":764000000}},"flags":""},{"id":"#UF$TABLE*2-41","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":13,"nanosecond":270000000}},"flags":""},{"id":"#UF$TABLE*2-40","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":13,"nanosecond":768000000}},"flags":""},{"id":"#UF$TABLE*2-43","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":12,"nanosecond":270000000}},"flags":""},{"id":"#UF$TABLE*2-42","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":12,"nanosecond":768000000}},"flags":""},{"id":"#UF$TABLE*2-38","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":14,"nanosecond":777000000}},"flags":""},{"id":"#UF$TABLE*2-37","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":15,"nanosecond":280000000}},"flags":""},{"id":"#UF$TABLE*2-39","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":14,"nanosecond":280000000}},"flags":""},{"id":"#UF$TABLE*2-34","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":16,"nanosecond":783000000}},"flags":""},{"id":"#UF$TABLE*2-33","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":17,"nanosecond":278000000}},"flags":""},{"id":"#UF$TABLE*2-36","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":15,"nanosecond":783000000}},"flags":""},{"id":"#UF$TABLE*2-35","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":16,"nanosecond":278000000}},"flags":""},{"id":"#UF$TABLE*2-30","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":18,"nanosecond":788000000}},"flags":""},{"id":"#UF$TABLE*2-32","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":17,"nanosecond":785000000}},"flags":""},{"id":"#UF$TABLE*2-31","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":18,"nanosecond":284000000}},"flags":""},{"id":"#UF$TABLE*2-61","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":3,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-60","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":3,"nanosecond":743000000}},"flags":""},{"id":"#UF$TABLE*2-27","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":20,"nanosecond":293000000}},"flags":""},{"id":"#UF$TABLE*2-26","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":20,"nanosecond":796000000}},"flags":""},{"id":"#UF$TABLE*2-29","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":19,"nanosecond":291000000}},"flags":""},{"id":"#UF$TABLE*2-28","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":19,"nanosecond":790000000}},"flags":""},{"id":"#UF$TABLE*2-23","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":22,"nanosecond":297000000}},"flags":""},{"id":"#UF$TABLE*2-22","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":22,"nanosecond":801000000}},"flags":""},{"id":"#UF$TABLE*2-25","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":21,"nanosecond":295000000}},"flags":""},{"id":"#UF$TABLE*2-24","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":21,"nanosecond":794000000}},"flags":""},{"id":"#UF$TABLE*2-63","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":2,"nanosecond":240000000}},"flags":""},{"id":"#UF$TABLE*2-62","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":2,"nanosecond":742000000}},"flags":""},{"id":"#UF$TABLE*2-65","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":1,"nanosecond":239000000}},"flags":""},{"id":"#UF$TABLE*2-21","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":23,"nanosecond":298000000}},"flags":""},{"id":"#UF$TABLE*2-64","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":1,"nanosecond":736000000}},"flags":""},{"id":"#UF$TABLE*2-20","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":23,"nanosecond":799000000}},"flags":""},{"id":"#UF$TABLE*2-50","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":8,"nanosecond":760000000}},"flags":""},{"id":"#UF$TABLE*2-19","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":24,"nanosecond":304000000}},"flags":""},{"id":"#UF$TABLE*2-16","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":25,"nanosecond":843000000}},"flags":""},{"id":"#UF$TABLE*2-59","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":4,"nanosecond":243000000}},"flags":""},{"id":"#UF$TABLE*2-18","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":24,"nanosecond":804000000}},"flags":""},{"id":"#UF$TABLE*2-17","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":25,"nanosecond":306000000}},"flags":""},{"id":"#UF$TABLE*2-56","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":5,"nanosecond":747000000}},"flags":""},{"id":"#UF$TABLE*2-55","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":6,"nanosecond":250000000}},"flags":""},{"id":"#UF$TABLE*2-58","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":4,"nanosecond":747000000}},"flags":""},{"id":"#UF$TABLE*2-57","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":5,"nanosecond":250000000}},"flags":""},{"id":"#UF$TABLE*2-52","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":7,"nanosecond":755000000}},"flags":""},{"id":"#UF$TABLE*2-51","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":8,"nanosecond":254000000}},"flags":""},{"id":"#UF$TABLE*2-54","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":6,"nanosecond":747000000}},"flags":""},{"id":"#UF$TABLE*2-53","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":7,"nanosecond":237000000}},"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-07-28T01:55:18.932799" elapsed="0.007408"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:55:18.944609" 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-07-28T01:55:18.940405" elapsed="0.004363"/>
</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-07-28T01:55:18.914128" elapsed="0.030709"/>
</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-07-28T01:55:16.870677" elapsed="2.074214"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:55:18.948339" 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-07-28T01:55:18.945090" elapsed="0.003311"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:55:19.080433" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=65.035s, table=0, n_packets=17, n_bytes=1322, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=27.157s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=dec_ttl
 cookie=0x1f, duration=15.594s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x24, duration=15.082s, 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=14.584s, 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=2.553s, 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.050s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=3.554s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.056s, 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=18.097s, 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=17.592s, 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=13.079s, 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=11.574s, 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.553s, 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=22.609s, 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=22.110s, 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=5.557s, 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=5.057s, 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=7.564s, 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=7.061s, 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=6.564s, 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=6.061s, 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=10.074s, 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=9.568s, 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=9.069s, 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=8.061s, 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=8.551s, 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=10.576s, 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=11.075s, 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=12.569s, 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=12.078s, 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=13.584s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=drop
 cookie=0x2b, duration=14.082s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=dec_ttl
 cookie=0x17, duration=17.097s, 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=16.091s, 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=16.594s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=TABLE
 cookie=0x14, duration=18.592s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=LOCAL
 cookie=0x13, duration=19.099s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=IN_PORT
 cookie=0x12, duration=19.598s, 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=20.102s, 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=20.605s, 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=21.104s, 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=21.607s, 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=23.108s, 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=23.611s, 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=24.115s, 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=24.612s, 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=25.113s, 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=25.618s, 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=26.118s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=drop
 cookie=0x2, duration=26.620s, 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-07-28T01:55:18.948614" elapsed="0.132020"/>
</kw>
<doc>Add all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:54:51.738047" elapsed="27.342723"/>
</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-07-28T01:55:19.092785" 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-07-28T01:55:19.093029" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.092634" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.093717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0322f70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.093256" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.094242" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.093943" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.094760" 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-07-28T01:55:19.094460" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.095239" 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-07-28T01:55:19.094958" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.096112" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.095421" elapsed="0.000723"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.096718" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.096313" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.097249" 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-07-28T01:55:19.096921" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.097836" 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-07-28T01:55:19.097501" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.098392" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.098071" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.099008" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.098652" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.099594" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0322f70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.099249" 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-07-28T01:55:19.092234" elapsed="0.007460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.100296" 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-07-28T01:55:19.099890" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.100747" 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-07-28T01:55:19.100499" 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-07-28T01:55:19.109057" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.108739" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.118026" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.118816" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.118968" 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-07-28T01:55:19.109301" elapsed="0.009704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.119800" 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-07-28T01:55:19.119310" elapsed="0.000567"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.123672" 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-07-28T01:55:19.120135" elapsed="0.003612"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.126352" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.123860" elapsed="0.002619"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.123827" 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-07-28T01:55:19.126726" 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-07-28T01:55:19.127048" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.126856" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.126833" elapsed="0.000321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.127198" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:19.129537" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.129602" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.108398" elapsed="0.021237"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.132710" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.130403" elapsed="0.002353"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.130377" elapsed="0.002400"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.133333" 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-07-28T01:55:19.132927" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.133899" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.133541" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.133977" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.134158" 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-07-28T01:55:19.129935" 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-07-28T01:55:19.134344" 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-07-28T01:55:19.107784" elapsed="0.027042"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.142695" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.142373" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.152325" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.154903" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.155333" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.142852" elapsed="0.012519"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.156041" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.155673" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.161489" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.156311" elapsed="0.006260"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.165103" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.162674" elapsed="0.002479"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.162647" elapsed="0.002529"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.193083" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.193134" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.165319" elapsed="0.027839"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.195113" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.193241" elapsed="0.001955"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.193221" elapsed="0.002006"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.195263" elapsed="0.000072"/>
</return>
<msg time="2026-07-28T01:55:19.195533" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.195578" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.141995" elapsed="0.053606"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.197949" elapsed="0.000052"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.196290" elapsed="0.001745"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.196270" elapsed="0.001787"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.198681" 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-07-28T01:55:19.198210" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.199353" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.198981" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.199492" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:19.199676" 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-07-28T01:55:19.195866" 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-07-28T01:55:19.199896" elapsed="0.000475"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.141361" elapsed="0.059075"/>
</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-07-28T01:55:19.088633" elapsed="0.111880"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.081113" elapsed="0.119561"/>
</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-07-28T01:55:19.212302" 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-07-28T01:55:19.212453" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.212116" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.213140" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.212673" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.213647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.213325" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.214119" 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-07-28T01:55:19.213830" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.214608" 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-07-28T01:55:19.214310" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.215593" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.214935" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.216151" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.215800" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.216816" 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-07-28T01:55:19.216458" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.217366" 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-07-28T01:55:19.217019" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.217939" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.217603" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.218503" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.218146" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.219069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ec310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.218714" 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-07-28T01:55:19.211767" elapsed="0.007407"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.219780" 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-07-28T01:55:19.219358" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.220223" 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-07-28T01:55:19.219967" 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-07-28T01:55:19.228258" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.227922" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.235895" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.236702" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.236853" 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-07-28T01:55:19.228440" elapsed="0.008450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.237532" 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-07-28T01:55:19.237132" elapsed="0.000471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.241275" 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-07-28T01:55:19.237809" elapsed="0.003541"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.244030" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.241491" elapsed="0.002637"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.241437" elapsed="0.002727"/>
</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-07-28T01:55:19.244385" 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-07-28T01:55:19.244756" elapsed="0.000085"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.244545" elapsed="0.000350"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.244521" elapsed="0.000408"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.244976" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:19.247360" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.247426" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.227594" elapsed="0.019885"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.250364" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.248288" elapsed="0.002126"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.248262" elapsed="0.002174"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.251023" 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-07-28T01:55:19.250605" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.251604" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.251215" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.251683" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:55:19.251877" 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-07-28T01:55:19.247800" elapsed="0.004102"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.252064" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.226980" elapsed="0.025586"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.260853" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.260493" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.270785" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.273489" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.273918" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.261013" elapsed="0.012943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.274596" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.274194" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.280282" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.274883" elapsed="0.006561"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.283401" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.281592" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.281556" elapsed="0.001933"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.350928" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.350992" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.283649" elapsed="0.067369"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.353050" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.351157" elapsed="0.001957"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.351122" elapsed="0.002018"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.353177" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:19.353400" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.353446" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.260091" elapsed="0.093407"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.355828" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.354171" elapsed="0.001703"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.354147" elapsed="0.001750"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.356555" 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-07-28T01:55:19.356065" elapsed="0.000518"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.357128" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.356751" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.357218" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:19.357407" 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-07-28T01:55:19.353757" elapsed="0.003676"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.357613" elapsed="0.000459"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.259434" elapsed="0.098704"/>
</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-07-28T01:55:19.208394" elapsed="0.149803"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.200958" elapsed="0.157364"/>
</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-07-28T01:55:19.369580" 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-07-28T01:55:19.369752" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.369416" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.370394" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.369937" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.370897" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.370597" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.371364" 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-07-28T01:55:19.371078" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.371855" 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-07-28T01:55:19.371566" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.372803" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.372034" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.373342" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.373004" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.373953" 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-07-28T01:55:19.373624" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.374556" 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-07-28T01:55:19.374190" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.375080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.374757" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.375632" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.375290" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.376170" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.375833" 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-07-28T01:55:19.369069" elapsed="0.007201"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.376833" 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-07-28T01:55:19.376422" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.377277" 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-07-28T01:55:19.377027" 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-07-28T01:55:19.385980" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.385645" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.393892" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.394635" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.394803" 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-07-28T01:55:19.386145" elapsed="0.008694"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.395532" 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-07-28T01:55:19.395120" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.400188" 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-07-28T01:55:19.395824" elapsed="0.004473"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.403596" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.400444" elapsed="0.003267"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.400403" elapsed="0.003350"/>
</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-07-28T01:55:19.403966" 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-07-28T01:55:19.404302" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.404100" elapsed="0.000349"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.404076" elapsed="0.000434"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.404560" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:19.406317" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.406371" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.385282" elapsed="0.021113"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.409306" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.407086" elapsed="0.002266"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.407061" elapsed="0.002314"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.410034" 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-07-28T01:55:19.409572" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.411498" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.410238" elapsed="0.001358"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.411758" elapsed="0.000170"/>
</return>
<msg time="2026-07-28T01:55:19.412347" 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-07-28T01:55:19.406671" elapsed="0.005828"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.412984" elapsed="0.001201"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.384558" elapsed="0.029787"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.426267" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.425902" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.438313" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.442922" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.443793" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.426437" elapsed="0.017423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.445093" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.444301" elapsed="0.000905"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.450657" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.445632" elapsed="0.005851"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.453422" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.451571" elapsed="0.001919"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.451546" elapsed="0.001970"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.481660" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.481708" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.453670" elapsed="0.028062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.483766" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.481813" elapsed="0.002010"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.481793" elapsed="0.002055"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.483882" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:55:19.484130" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.484173" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.425448" elapsed="0.058747"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.486548" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.484865" elapsed="0.001729"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.484844" elapsed="0.001772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.487238" 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-07-28T01:55:19.486814" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.487913" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.487509" elapsed="0.000430"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.487989" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.488209" 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-07-28T01:55:19.484481" elapsed="0.003753"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.488404" elapsed="0.000463"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.424681" elapsed="0.064251"/>
</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-07-28T01:55:19.365685" elapsed="0.123309"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.358558" elapsed="0.130620"/>
</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-07-28T01:55:19.500990" 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-07-28T01:55:19.501156" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.500841" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.501875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.501382" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.502419" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.502063" elapsed="0.000385"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.502969" 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-07-28T01:55:19.502661" elapsed="0.000374"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.503555" 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-07-28T01:55:19.503193" elapsed="0.000391"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.504631" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.503742" elapsed="0.000921"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.505204" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.504826" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.505832" 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-07-28T01:55:19.505446" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.506415" 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-07-28T01:55:19.506067" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.506957" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.506635" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.507503" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.507159" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.508069" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3728f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.507743" 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-07-28T01:55:19.500402" elapsed="0.007767"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.508788" 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-07-28T01:55:19.508370" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.509221" 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-07-28T01:55:19.508974" 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-07-28T01:55:19.517633" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.517298" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.524304" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.525089" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.525237" 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-07-28T01:55:19.517829" elapsed="0.007443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.525982" 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-07-28T01:55:19.525573" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.530197" 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-07-28T01:55:19.526294" elapsed="0.003979"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.533062" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.530375" elapsed="0.002756"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.530347" elapsed="0.002810"/>
</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-07-28T01:55:19.533303" 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-07-28T01:55:19.533626" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.533485" elapsed="0.000193"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.533454" elapsed="0.000247"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.533733" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:19.535514" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.535564" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.516907" elapsed="0.018680"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.537969" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.536233" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.536215" elapsed="0.001823"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.538649" 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-07-28T01:55:19.538185" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.539381" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.538877" elapsed="0.000531"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.539480" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:19.539706" 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-07-28T01:55:19.535840" elapsed="0.003892"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.539894" elapsed="0.000468"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.516250" elapsed="0.024230"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.548836" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.548497" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.562639" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.565432" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.565941" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.548997" elapsed="0.016985"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.566658" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.566212" elapsed="0.000567"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.572676" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.566987" elapsed="0.006511"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.575422" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.573576" elapsed="0.001946"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.573555" elapsed="0.001993"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.601534" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.601581" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.575694" elapsed="0.025911"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.603406" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.601685" elapsed="0.001792"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.601666" elapsed="0.001837"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.603537" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:19.603737" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.603780" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.548064" elapsed="0.055738"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.605991" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.604356" elapsed="0.001681"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.604337" elapsed="0.001722"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.606645" 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-07-28T01:55:19.606209" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.607190" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.606836" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.607265" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.607445" 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-07-28T01:55:19.604021" elapsed="0.003466"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.607647" 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-07-28T01:55:19.547363" elapsed="0.060756"/>
</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-07-28T01:55:19.496847" elapsed="0.111331"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.489398" elapsed="0.118899"/>
</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-07-28T01:55:19.619276" 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-07-28T01:55:19.619426" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.619133" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.620044" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee2a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.619626" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.620527" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.620226" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.621010" 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-07-28T01:55:19.620707" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.621474" 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-07-28T01:55:19.621187" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.622318" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.621653" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.622887" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.622536" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.623502" 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-07-28T01:55:19.623152" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.624030" 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-07-28T01:55:19.623701" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.624558" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.624225" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.625099" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.624759" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.625645" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ee2a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.625299" 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-07-28T01:55:19.618798" elapsed="0.006943"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.626366" 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-07-28T01:55:19.625941" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.626850" 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-07-28T01:55:19.626567" 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-07-28T01:55:19.635295" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.634921" elapsed="0.000402"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.641279" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.641924" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.642032" 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-07-28T01:55:19.635536" elapsed="0.006522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.642545" 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-07-28T01:55:19.642222" elapsed="0.000372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.645334" 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-07-28T01:55:19.642783" elapsed="0.002606"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.648188" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.645484" elapsed="0.002847"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.645448" elapsed="0.002923"/>
</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-07-28T01:55:19.648690" 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-07-28T01:55:19.649091" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.648839" elapsed="0.000355"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.648808" elapsed="0.000423"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.649281" elapsed="0.000023"/>
</return>
<msg time="2026-07-28T01:55:19.651874" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.651937" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.634566" elapsed="0.017403"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.654871" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.652901" elapsed="0.002018"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.652876" elapsed="0.002065"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.655569" 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-07-28T01:55:19.655093" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.656226" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.655798" elapsed="0.000458"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.656306" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.656503" 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-07-28T01:55:19.652321" elapsed="0.004208"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.656731" elapsed="0.000449"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.633950" elapsed="0.023319"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.666081" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.665734" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.676296" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.678353" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.678882" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.666240" elapsed="0.012704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.680140" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.679380" elapsed="0.000866"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.688496" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.680743" elapsed="0.008591"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.691434" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.689414" elapsed="0.002088"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.689392" elapsed="0.002135"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.721078" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.721128" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.691717" elapsed="0.029434"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.723226" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.721274" elapsed="0.002010"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.721216" elapsed="0.002094"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.723344" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:19.723571" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.723654" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.665279" elapsed="0.058401"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.725994" elapsed="0.000059"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.724278" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.724259" elapsed="0.001851"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.726742" 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-07-28T01:55:19.726276" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.727339" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.726977" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.727417" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.727673" 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-07-28T01:55:19.723930" elapsed="0.003770"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.727868" 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-07-28T01:55:19.664508" elapsed="0.063830"/>
</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-07-28T01:55:19.615509" elapsed="0.112887"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.608615" elapsed="0.119965"/>
</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-07-28T01:55:19.740265" 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-07-28T01:55:19.740438" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.740118" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.741127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ce50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.740645" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.741659" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.741348" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.742162" 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-07-28T01:55:19.741840" elapsed="0.000390"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.742731" 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-07-28T01:55:19.742387" elapsed="0.000375"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.743630" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.742918" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.744209" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.743859" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.744849" 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-07-28T01:55:19.744518" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.745416" 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-07-28T01:55:19.745088" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.746021" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.745667" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.746631" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.746231" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.747187" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ce50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.746830" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:19.739740" elapsed="0.007545"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.747898" 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-07-28T01:55:19.747435" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.748367" 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-07-28T01:55:19.748119" 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-07-28T01:55:19.757106" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.756786" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.762899" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.763669" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.763782" 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-07-28T01:55:19.757268" elapsed="0.006541"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.764312" 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-07-28T01:55:19.764014" elapsed="0.000346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.767180" 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-07-28T01:55:19.764523" elapsed="0.002749"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.770079" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.767359" elapsed="0.002829"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.767333" elapsed="0.002892"/>
</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-07-28T01:55:19.770616" 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-07-28T01:55:19.771002" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.770756" elapsed="0.000322"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.770733" elapsed="0.000378"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.771157" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:19.773731" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.773796" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.756426" elapsed="0.017402"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.776863" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.774801" elapsed="0.002109"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.774768" elapsed="0.002164"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.777603" 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-07-28T01:55:19.777083" elapsed="0.000548"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.778228" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.777814" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.778307" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:19.778557" 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-07-28T01:55:19.774178" elapsed="0.004410"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.778837" elapsed="0.000466"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.755832" elapsed="0.023539"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.788206" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.787857" elapsed="0.000376"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.796856" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.798892" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.799230" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.788366" elapsed="0.010894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.799793" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.799433" elapsed="0.000425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.806216" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.800111" elapsed="0.007329"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.809516" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.807589" elapsed="0.001982"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.807568" elapsed="0.002027"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.838400" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.838451" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.809779" elapsed="0.028713"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.840554" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.838584" elapsed="0.002029"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.838561" elapsed="0.002078"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.840674" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:19.840924" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.840967" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.787414" elapsed="0.053575"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.843435" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.841682" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.841663" elapsed="0.001856"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.844212" 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-07-28T01:55:19.843712" elapsed="0.000528"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.844862" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.844406" elapsed="0.000483"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.844939" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.845119" 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-07-28T01:55:19.841271" elapsed="0.003873"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.845342" elapsed="0.000479"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.786723" elapsed="0.059163"/>
</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-07-28T01:55:19.736199" elapsed="0.109745"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.728791" elapsed="0.117282"/>
</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-07-28T01:55:19.858149" 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-07-28T01:55:19.858321" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.857997" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.859062" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e53a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.858524" elapsed="0.000568"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.859632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.859250" elapsed="0.000411"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.860096" 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-07-28T01:55:19.859818" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.860661" 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-07-28T01:55:19.860321" elapsed="0.000365"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.861729" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.860880" elapsed="0.000881"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.862346" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.861962" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.863031" 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-07-28T01:55:19.862654" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.863686" 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-07-28T01:55:19.863234" elapsed="0.000497"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.864216" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.863890" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.864766" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.864419" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.865295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e53a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.864967" 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-07-28T01:55:19.857607" elapsed="0.007788"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.866007" 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-07-28T01:55:19.865566" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.866502" 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-07-28T01:55:19.866234" elapsed="0.000379"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.875526" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.875135" elapsed="0.000420"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.882535" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.883385" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.883566" 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-07-28T01:55:19.875758" elapsed="0.007850"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.884318" 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-07-28T01:55:19.883947" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.888207" 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-07-28T01:55:19.884618" elapsed="0.003667"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:19.891158" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:19.888388" elapsed="0.002915"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.888360" elapsed="0.002986"/>
</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-07-28T01:55:19.891635" 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-07-28T01:55:19.892047" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.891771" elapsed="0.000354"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:19.891748" elapsed="0.000410"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.892204" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:19.894737" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:19.894852" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.874768" elapsed="0.020121"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.897811" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.895798" elapsed="0.002061"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.895769" elapsed="0.002113"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.898538" 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-07-28T01:55:19.898068" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.899137" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.898737" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.899214" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.899441" 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-07-28T01:55:19.895199" elapsed="0.004286"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.899649" elapsed="0.000477"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.874096" elapsed="0.026097"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.908825" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.908463" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.917438" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.919364" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:19.919708" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:19.908983" elapsed="0.010752"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.920273" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:19.919935" elapsed="0.000390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.926413" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:19.920489" elapsed="0.007127"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.929906" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.927722" elapsed="0.002271"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.927694" elapsed="0.002323"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.955500" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:19.955550" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:19.930164" elapsed="0.025409"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:19.957657" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:19.955696" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.955674" elapsed="0.002066"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:19.957773" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:19.958018" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:19.958061" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:19.908006" elapsed="0.050078"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:19.960571" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:19.958759" elapsed="0.001860"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:19.958740" elapsed="0.001977"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.961373" 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-07-28T01:55:19.960890" elapsed="0.000511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.962012" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:19.961598" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:19.962091" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:19.962316" 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-07-28T01:55:19.958352" elapsed="0.003990"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:19.962525" elapsed="0.000450"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:19.907280" elapsed="0.055760"/>
</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-07-28T01:55:19.853897" elapsed="0.109204"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.846327" elapsed="0.116903"/>
</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-07-28T01:55:19.974953" 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-07-28T01:55:19.975102" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.974791" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:19.975830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:19.975285" elapsed="0.000573"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.976380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:19.976049" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.976994" 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-07-28T01:55:19.976581" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:19.977554" 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-07-28T01:55:19.977198" elapsed="0.000383"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:19.978641" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:19.977756" elapsed="0.000916"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.979260" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.978836" elapsed="0.000470"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.979907" 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-07-28T01:55:19.979569" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.980553" 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-07-28T01:55:19.980149" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.981197" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:19.980797" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.981824" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:19.981440" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.982660" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:19.982066" elapsed="0.000640"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:19.974387" elapsed="0.008379"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.983373" 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-07-28T01:55:19.982921" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.983876" 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-07-28T01:55:19.983623" elapsed="0.000360"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.992757" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:19.992388" elapsed="0.000396"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:19.998796" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:19.999358" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:19.999480" 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-07-28T01:55:19.992916" elapsed="0.006592"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:19.999967" 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-07-28T01:55:19.999670" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.003252" 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-07-28T01:55:20.000156" elapsed="0.003170"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.006206" elapsed="0.000088"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.003493" elapsed="0.002858"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.003443" elapsed="0.002944"/>
</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-07-28T01:55:20.006615" 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-07-28T01:55:20.007042" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.006816" elapsed="0.000304"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.006787" elapsed="0.000365"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.007198" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:20.009711" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.009791" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:19.992034" elapsed="0.017782"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.012145" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.010410" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.010392" elapsed="0.001821"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.012828" 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-07-28T01:55:20.012367" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.013442" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.013019" elapsed="0.000466"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.013574" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:20.013759" 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-07-28T01:55:20.010039" elapsed="0.003751"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.013952" 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-07-28T01:55:19.991383" elapsed="0.023061"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.022990" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.022652" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.031471" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.033407" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.033788" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.023145" elapsed="0.010670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.037319" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.033976" elapsed="0.003413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.043230" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.037661" elapsed="0.006406"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.046000" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.044143" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.044123" elapsed="0.001949"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.071296" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.071343" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.046216" elapsed="0.025150"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.073263" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.071447" elapsed="0.001872"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.071427" elapsed="0.001916"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.073377" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.073596" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.073639" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.022223" elapsed="0.051438"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.076077" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.074352" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.074333" elapsed="0.001848"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.076814" 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-07-28T01:55:20.076337" elapsed="0.000505"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.077360" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.077006" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.077436" elapsed="0.000083"/>
</return>
<msg time="2026-07-28T01:55:20.077676" 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-07-28T01:55:20.073966" elapsed="0.003735"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.077859" elapsed="0.000461"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.021566" elapsed="0.056818"/>
</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-07-28T01:55:19.970787" elapsed="0.107654"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:19.963440" elapsed="0.115181"/>
</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-07-28T01:55:20.090645" 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-07-28T01:55:20.090841" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.090494" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.091448" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.091021" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.091961" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.091683" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.092447" 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-07-28T01:55:20.092137" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.092950" 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-07-28T01:55:20.092641" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.094020" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:20.093124" elapsed="0.000941"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.094620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.094226" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.095271" 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-07-28T01:55:20.094901" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.095896" 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-07-28T01:55:20.095519" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.096446" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.096094" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.097021" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:20.096663" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.097600" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f1e660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.097220" elapsed="0.000424"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:20.090103" elapsed="0.007596"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.098348" 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-07-28T01:55:20.097890" elapsed="0.000488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.098824" 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-07-28T01:55:20.098579" 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-07-28T01:55:20.107599" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.107237" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.113093" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.113702" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.113808" 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-07-28T01:55:20.107794" elapsed="0.006040"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.114330" 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-07-28T01:55:20.114034" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.118135" 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-07-28T01:55:20.114580" elapsed="0.003629"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.121141" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.118438" elapsed="0.002799"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.118407" elapsed="0.002866"/>
</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-07-28T01:55:20.121501" 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-07-28T01:55:20.121818" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.121632" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.121609" elapsed="0.000313"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.121967" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:20.123796" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.123842" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.106915" elapsed="0.016950"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.126039" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.124409" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.124392" elapsed="0.001715"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.126692" 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-07-28T01:55:20.126257" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.127246" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.126884" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.127321" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:20.127521" 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-07-28T01:55:20.124079" elapsed="0.003468"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.127705" 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-07-28T01:55:20.106266" elapsed="0.021889"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.136701" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.136346" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.145334" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.148326" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.148830" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.136895" elapsed="0.011976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.149567" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.149095" elapsed="0.000539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.156088" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.149883" elapsed="0.007382"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.160020" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.157369" elapsed="0.002700"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.157342" elapsed="0.002750"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.188213" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.188261" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.160234" elapsed="0.028049"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.190221" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.188401" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.188346" elapsed="0.001992"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.190374" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.190594" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.190638" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.135932" elapsed="0.054728"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.193019" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.191381" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.191360" elapsed="0.001727"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.193695" 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-07-28T01:55:20.193240" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.194306" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.193900" elapsed="0.000443"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.194401" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:55:20.194645" 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-07-28T01:55:20.190929" elapsed="0.003744"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.194887" elapsed="0.000493"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.135252" elapsed="0.060199"/>
</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-07-28T01:55:20.086343" elapsed="0.109194"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.078816" elapsed="0.116859"/>
</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-07-28T01:55:20.209721" 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-07-28T01:55:20.209916" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.209543" elapsed="0.000403"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.210676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.210138" elapsed="0.000567"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.211162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.210862" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.211702" 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-07-28T01:55:20.211391" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.212163" 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-07-28T01:55:20.211890" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.213209" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:20.212352" elapsed="0.000888"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.213791" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.213419" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.214422" 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-07-28T01:55:20.214077" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.214990" 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-07-28T01:55:20.214647" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.215575" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.215199" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.216140" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:20.215802" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.216701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.216343" elapsed="0.000401"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:20.209163" elapsed="0.007641"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.217391" 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-07-28T01:55:20.216973" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.217897" 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-07-28T01:55:20.217622" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.226191" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.225857" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.231982" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.232697" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.232809" 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-07-28T01:55:20.226357" elapsed="0.006479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.233331" 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-07-28T01:55:20.233022" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.236191" 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-07-28T01:55:20.233570" elapsed="0.002675"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.239073" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.236391" elapsed="0.002798"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.236363" elapsed="0.002863"/>
</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-07-28T01:55:20.239445" elapsed="0.000080"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.239849" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.239652" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.239625" elapsed="0.000330"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.240005" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:55:20.242395" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.242484" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.225517" elapsed="0.017004"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.245378" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.243366" elapsed="0.002058"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.243340" elapsed="0.002105"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.246069" 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-07-28T01:55:20.245619" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.246649" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.246260" elapsed="0.000415"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.246724" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:20.246917" 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-07-28T01:55:20.242867" elapsed="0.004076"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.247106" elapsed="0.000451"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.224882" elapsed="0.022768"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.255695" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.255327" elapsed="0.000400"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.264152" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.267094" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.267708" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.255864" elapsed="0.011895"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.268540" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.268099" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.274602" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.268826" elapsed="0.006897"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.277915" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.275887" elapsed="0.002081"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.275808" elapsed="0.002184"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.305592" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.305649" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.278151" elapsed="0.027522"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.307815" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.305824" elapsed="0.002053"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.305793" elapsed="0.002110"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.307941" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:55:20.308223" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.308269" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.254932" elapsed="0.053359"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.310731" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.309037" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.309018" elapsed="0.001818"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.311512" 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-07-28T01:55:20.310995" elapsed="0.000545"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.312137" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.311741" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.312239" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.312423" 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-07-28T01:55:20.308627" elapsed="0.003822"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.312664" elapsed="0.000454"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.254272" elapsed="0.058911"/>
</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-07-28T01:55:20.205547" elapsed="0.107695"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.196023" elapsed="0.117385"/>
</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-07-28T01:55:20.325386" 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-07-28T01:55:20.325575" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.325199" elapsed="0.000442"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.326284" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0300540&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.325799" elapsed="0.000515"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.326812" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.326521" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.327302" 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-07-28T01:55:20.327027" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.327840" 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-07-28T01:55:20.327529" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.328920" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:20.328023" elapsed="0.000928"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.329500" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.329112" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.330111" 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-07-28T01:55:20.329779" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.330701" 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-07-28T01:55:20.330351" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.331252" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.330895" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.331864" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:20.331502" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.332459" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0300540&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.332067" elapsed="0.000451"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:20.324861" elapsed="0.007748"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.333194" 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-07-28T01:55:20.332764" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.333898" 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-07-28T01:55:20.333414" elapsed="0.000551"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.342786" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.342392" elapsed="0.000423"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.348758" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.349417" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.349555" 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-07-28T01:55:20.342952" elapsed="0.006633"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.350097" 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-07-28T01:55:20.349773" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.352973" 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-07-28T01:55:20.350288" elapsed="0.002739"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.355927" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.353180" elapsed="0.002860"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.353152" elapsed="0.002926"/>
</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-07-28T01:55:20.356315" elapsed="0.000083"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.356758" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.356532" elapsed="0.000305"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.356505" elapsed="0.000418"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.356975" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:20.359662" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.359730" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.342027" elapsed="0.017738"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.362759" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.360798" elapsed="0.002007"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.360770" elapsed="0.002057"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.363548" 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-07-28T01:55:20.362987" elapsed="0.000590"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.364136" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.363741" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.364212" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:20.364436" 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-07-28T01:55:20.360177" elapsed="0.004301"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.364643" 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-07-28T01:55:20.341331" elapsed="0.023870"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.373715" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.373331" elapsed="0.000412"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.382707" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.384781" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.385233" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.373881" elapsed="0.011382"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.385929" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.385478" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.392636" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.386211" elapsed="0.007581"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.395878" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.393918" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.393857" elapsed="0.002098"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.421920" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.421989" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.396116" elapsed="0.025899"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.424361" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.422158" elapsed="0.002267"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.422123" elapsed="0.002331"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.424509" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:55:20.424747" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.424829" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.372906" elapsed="0.051949"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.427315" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.425629" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.425608" elapsed="0.001775"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.428084" 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-07-28T01:55:20.427565" elapsed="0.000547"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.428738" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.428316" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.428816" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.429002" 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-07-28T01:55:20.425127" elapsed="0.003901"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.429234" elapsed="0.000498"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.372170" elapsed="0.057629"/>
</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-07-28T01:55:20.321297" elapsed="0.108565"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.313756" elapsed="0.116237"/>
</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-07-28T01:55:20.441879" 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-07-28T01:55:20.442060" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.441719" elapsed="0.000370"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.442731" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06926b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.442257" elapsed="0.000502"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.443201" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.442917" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.443678" 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-07-28T01:55:20.443380" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.444127" 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-07-28T01:55:20.443856" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.445119" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:20.444304" elapsed="0.000847"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.445796" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.445369" elapsed="0.000470"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.446403" 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-07-28T01:55:20.446072" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.446984" 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-07-28T01:55:20.446643" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.447507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:20.447177" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.448028" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:20.447706" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.448571" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06926b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.448226" 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-07-28T01:55:20.441294" elapsed="0.007381"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.449237" 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-07-28T01:55:20.448831" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.449728" 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-07-28T01:55:20.449420" elapsed="0.000371"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.457889" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.457534" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.463687" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.464290" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.464416" 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-07-28T01:55:20.458053" elapsed="0.006390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.464978" 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-07-28T01:55:20.464672" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.468438" 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-07-28T01:55:20.465184" elapsed="0.003367"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.471391" elapsed="0.000055"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.468675" elapsed="0.002855"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.468641" elapsed="0.003012"/>
</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-07-28T01:55:20.471903" 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-07-28T01:55:20.472250" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.472045" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.472019" elapsed="0.000346"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.472413" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:20.474844" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.474890" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.457192" elapsed="0.017722"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.477206" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.475619" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.475600" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.477926" 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-07-28T01:55:20.477435" elapsed="0.000519"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.478529" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.478136" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.478610" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:20.478797" 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-07-28T01:55:20.475217" 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-07-28T01:55:20.478984" elapsed="0.000577"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.456590" elapsed="0.023042"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.488590" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.488203" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.497848" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.501721" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.502537" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.488753" elapsed="0.013851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.503714" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.503035" elapsed="0.000784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.511828" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.504212" elapsed="0.008448"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.514701" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.512736" elapsed="0.002015"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.512715" elapsed="0.002059"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.539941" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.539989" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.514951" elapsed="0.025061"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.541999" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.540132" elapsed="0.001924"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.540111" elapsed="0.001969"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.542113" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:20.542353" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.542400" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.487795" elapsed="0.054627"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.544794" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.543065" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.543046" elapsed="0.001819"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.545489" 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-07-28T01:55:20.545015" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.546075" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.545720" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.546150" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:55:20.546371" 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-07-28T01:55:20.542684" elapsed="0.003712"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.546593" 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-07-28T01:55:20.487066" elapsed="0.060026"/>
</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-07-28T01:55:20.437841" elapsed="0.109308"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.430325" elapsed="0.116986"/>
</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-07-28T01:55:20.559291" 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-07-28T01:55:20.559508" 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-07-28T01:55:20.559144" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.560153" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.559692" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.560681" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.560375" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.561208" 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-07-28T01:55:20.560898" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.561746" 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-07-28T01:55:20.561419" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.562731" 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-07-28T01:55:20.561926" elapsed="0.000837"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.563341" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.562965" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.563968" 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-07-28T01:55:20.563636" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.564597" 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-07-28T01:55:20.564202" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.565217" 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-07-28T01:55:20.564795" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.565910" 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-07-28T01:55:20.565526" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.566499" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.566111" elapsed="0.000435"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:20.558769" elapsed="0.007875"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.567266" 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-07-28T01:55:20.566836" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.567753" 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-07-28T01:55:20.567452" 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-07-28T01:55:20.576615" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.576089" elapsed="0.000560"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.582858" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.583444" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.583609" 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-07-28T01:55:20.576798" elapsed="0.006840"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.584102" 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-07-28T01:55:20.583802" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.586866" 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-07-28T01:55:20.584330" elapsed="0.002656"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.589594" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.587067" elapsed="0.002674"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.587046" elapsed="0.002777"/>
</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-07-28T01:55:20.590079" 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-07-28T01:55:20.590405" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.590214" elapsed="0.000287"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.590190" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.590625" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:20.593163" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.593226" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.575700" elapsed="0.017559"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.596376" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.594150" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.594124" elapsed="0.002320"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.597054" 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-07-28T01:55:20.596650" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.597740" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.597280" elapsed="0.000487"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.597818" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:20.597998" 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-07-28T01:55:20.593636" elapsed="0.004387"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.598221" 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-07-28T01:55:20.574979" elapsed="0.023764"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.607340" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.606959" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.616323" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.619126" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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-pr... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.619645" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.607567" elapsed="0.012117"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.620322" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.619960" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.626599" 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;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;9&lt;/second&gt;&lt;nanosecond&gt;262000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;761000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;255000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;765000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;260000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;764000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;270000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;777000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;783000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;278000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;788000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;785000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;284000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;239000000&lt;/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;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;3&lt;/second&gt;&lt;nanosecond&gt;743000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;293000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;796000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;291000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;297000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;295000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;240000000&lt;/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;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;2&lt;/second&gt;&lt;nanosecond&gt;742000000&lt;/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;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;239000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;1&lt;/second&gt;&lt;nanosecond&gt;736000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;799000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;760000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;25&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;243000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;24&lt;/second&gt;&lt;nanosecond&gt;804000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;25&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;250000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;755000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;254000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;747000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;237000000&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-07-28T01:55:20.620660" elapsed="0.007156"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.629842" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.627895" elapsed="0.001997"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.627874" elapsed="0.002040"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.657286" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.657376" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.630095" elapsed="0.027306"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.659378" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.657500" elapsed="0.001980"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.657479" elapsed="0.002030"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.659544" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.659813" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.659861" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.606572" elapsed="0.053312"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.662223" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.660506" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.660486" elapsed="0.001805"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.662947" 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-07-28T01:55:20.662493" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.663588" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.663172" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.663668" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:55:20.663875" 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-07-28T01:55:20.660147" elapsed="0.003754"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.664095" 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-07-28T01:55:20.605823" elapsed="0.058794"/>
</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-07-28T01:55:20.555151" elapsed="0.109528"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.547649" elapsed="0.117153"/>
</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-07-28T01:55:20.676789" 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-07-28T01:55:20.676942" 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-07-28T01:55:20.676641" elapsed="0.000367"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.677630" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.677163" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.678158" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.677811" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.678676" 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-07-28T01:55:20.678343" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.679160" 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-07-28T01:55:20.678851" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.680072" 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-07-28T01:55:20.679334" elapsed="0.000769"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.680692" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.680301" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.681300" 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-07-28T01:55:20.680968" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.681887" 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-07-28T01:55:20.681514" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.682442" 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-07-28T01:55:20.682124" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.683062" 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-07-28T01:55:20.682701" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.683638" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.683262" elapsed="0.000420"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:20.676215" elapsed="0.007523"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.684394" 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-07-28T01:55:20.683965" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.684910" 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-07-28T01:55:20.684631" 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-07-28T01:55:20.693799" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.693433" elapsed="0.000394"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.698864" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.699457" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.699595" 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-07-28T01:55:20.693958" elapsed="0.005665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.700175" 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-07-28T01:55:20.699807" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.704051" 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-07-28T01:55:20.700409" elapsed="0.003789"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.707029" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.704307" elapsed="0.002876"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.704276" elapsed="0.003006"/>
</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-07-28T01:55:20.707519" 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-07-28T01:55:20.707895" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.707651" elapsed="0.000319"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.707628" elapsed="0.000381"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.708066" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:20.710180" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.710238" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.693074" elapsed="0.017194"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.712760" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.710997" elapsed="0.001809"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.710978" elapsed="0.001850"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.713426" 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-07-28T01:55:20.713016" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.714068" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.713672" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.714145" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:20.714369" 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-07-28T01:55:20.710603" 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-07-28T01:55:20.714606" elapsed="0.000441"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.692445" elapsed="0.022670"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.723650" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.723283" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.732782" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.737173" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.737878" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.723811" elapsed="0.014130"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.738970" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.738325" elapsed="0.000753"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.744585" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:20.739407" elapsed="0.006014"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.747286" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.745518" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.745496" elapsed="0.001862"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.770790" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.770839" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.747522" elapsed="0.023341"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.772680" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.770949" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.770929" elapsed="0.001869"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.772842" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:20.773059" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.773113" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.722870" elapsed="0.050268"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.775329" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.773741" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.773722" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.775992" 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-07-28T01:55:20.775564" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.776555" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.776182" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.776631" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:20.776837" 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-07-28T01:55:20.773376" 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-07-28T01:55:20.777027" 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-07-28T01:55:20.722164" elapsed="0.055359"/>
</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-07-28T01:55:20.672594" elapsed="0.104989"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.665140" elapsed="0.112566"/>
</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-07-28T01:55:20.788789" 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-07-28T01:55:20.789059" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:20.788645" elapsed="0.000444"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.789686" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a1b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.789245" elapsed="0.000470"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.790156" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.789872" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.790636" 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-07-28T01:55:20.790340" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.791085" 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-07-28T01:55:20.790815" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.791880" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:20.791261" elapsed="0.000651"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.792401" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.792068" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.793009" 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-07-28T01:55:20.792664" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.793551" 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-07-28T01:55:20.793205" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.794098" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:20.793749" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.794643" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:20.794301" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.795175" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394a1b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.794841" 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-07-28T01:55:20.788290" elapsed="0.006983"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.795821" 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-07-28T01:55:20.795422" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.796239" 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-07-28T01:55:20.796002" 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-07-28T01:55:20.804180" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.803868" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.810449" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.811028" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.811139" 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-07-28T01:55:20.804341" elapsed="0.006824"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.811650" 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-07-28T01:55:20.811348" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.814582" 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-07-28T01:55:20.811843" elapsed="0.002814"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.817253" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.814762" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.814732" 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-07-28T01:55:20.817619" 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-07-28T01:55:20.818005" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.817811" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.817786" elapsed="0.000323"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.818155" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:20.820613" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.820678" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.803551" elapsed="0.017158"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.823186" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.821618" elapsed="0.001614"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.821598" elapsed="0.001656"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.823833" 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-07-28T01:55:20.823407" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.824369" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.824020" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.824444" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:55:20.824650" 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-07-28T01:55:20.821024" elapsed="0.003651"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.824832" 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-07-28T01:55:20.802976" elapsed="0.022351"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.833091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.832787" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.840872" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.842730" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.843029" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.833248" elapsed="0.009808"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.843492" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.843219" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.847591" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:20.843687" elapsed="0.004748"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.850314" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.848525" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.848505" elapsed="0.001881"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.872933" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.872982" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.850546" elapsed="0.022461"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.874857" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.873090" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.873070" elapsed="0.001868"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.874972" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.875174" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.875219" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.832397" elapsed="0.042845"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.877402" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.875818" elapsed="0.001629"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.875801" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.878074" 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-07-28T01:55:20.877640" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.878634" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.878264" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.878709" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:20.878889" 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-07-28T01:55:20.875480" 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-07-28T01:55:20.879072" 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-07-28T01:55:20.831779" elapsed="0.047769"/>
</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-07-28T01:55:20.784976" elapsed="0.094630"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.778001" elapsed="0.101730"/>
</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-07-28T01:55:20.891695" 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-07-28T01:55:20.891996" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:20.891539" elapsed="0.000488"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:20.892648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842e30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:20.892197" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.893112" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:20.892830" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.893581" 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-07-28T01:55:20.893290" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:20.894048" 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-07-28T01:55:20.893756" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.894816" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:20.894225" elapsed="0.000621"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.895344" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.895004" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.895959" 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-07-28T01:55:20.895629" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.896499" 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-07-28T01:55:20.896156" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.897009" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:20.896695" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.897544" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:20.897205" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.898096" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842e30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:20.897743" 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-07-28T01:55:20.891182" elapsed="0.007013"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.898753" 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-07-28T01:55:20.898348" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.899176" 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-07-28T01:55:20.898936" 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-07-28T01:55:20.907313" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.906991" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.912279" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.912859" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:20.912980" 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-07-28T01:55:20.907505" elapsed="0.005502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.913479" 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-07-28T01:55:20.913185" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.916256" 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-07-28T01:55:20.913700" elapsed="0.002622"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:20.918314" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:20.916401" elapsed="0.001994"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.916381" elapsed="0.002042"/>
</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-07-28T01:55:20.918589" 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-07-28T01:55:20.919012" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.918727" elapsed="0.000376"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:20.918690" elapsed="0.000447"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.919183" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:20.921636" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:20.921717" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:20.906650" elapsed="0.015102"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.924295" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.922614" elapsed="0.001729"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.922596" elapsed="0.001769"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.924984" 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-07-28T01:55:20.924541" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.925585" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.925180" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.925661" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:55:20.925862" 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-07-28T01:55:20.922073" elapsed="0.003814"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.926060" elapsed="0.000471"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.905968" elapsed="0.020629"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.934873" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:20.934533" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:20.943285" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:20.946086" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:20.946580" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:20.935031" elapsed="0.011590"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.947225" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:20.946856" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.955416" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:20.947520" elapsed="0.008812"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.958255" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.956411" elapsed="0.001894"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.956391" elapsed="0.001937"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:20.981437" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:20.981511" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:20.958501" elapsed="0.023037"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:20.983429" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:20.981619" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.981600" elapsed="0.001949"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:20.983590" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:20.983794" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:20.983851" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:20.934095" elapsed="0.049779"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:20.986120" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:20.984448" elapsed="0.001718"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:20.984430" elapsed="0.001758"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.986809" 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-07-28T01:55:20.986338" elapsed="0.000511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:20.987441" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:20.987055" elapsed="0.000439"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:20.987547" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:20.987745" 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-07-28T01:55:20.984097" elapsed="0.003674"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:20.987944" elapsed="0.000437"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:20.933426" elapsed="0.055034"/>
</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-07-28T01:55:20.887749" elapsed="0.100785"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.880048" elapsed="0.108623"/>
</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-07-28T01:55:21.000544" 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-07-28T01:55:21.000707" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.000374" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.001311" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38410d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.000902" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.001829" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.001532" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.002319" 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-07-28T01:55:21.002020" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.002823" 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-07-28T01:55:21.002525" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.003671" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.003003" elapsed="0.000700"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.004225" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.003864" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.004850" 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-07-28T01:55:21.004500" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.005413" 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-07-28T01:55:21.005061" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.005989" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.005641" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.006574" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.006211" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.007150" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38410d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.006777" elapsed="0.000428"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:21.000024" elapsed="0.007248"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.007858" 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-07-28T01:55:21.007428" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.008312" 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-07-28T01:55:21.008053" 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-07-28T01:55:21.016761" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.016415" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.021672" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.022423" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.022608" 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-07-28T01:55:21.016942" elapsed="0.005714"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.023315" 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-07-28T01:55:21.022884" elapsed="0.000514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.027116" 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-07-28T01:55:21.023647" elapsed="0.003547"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.029934" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.027332" elapsed="0.002699"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.027302" elapsed="0.002781"/>
</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-07-28T01:55:21.030300" 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-07-28T01:55:21.030731" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.030431" elapsed="0.000378"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.030408" elapsed="0.000447"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.030902" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:21.032911" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.032958" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.016067" elapsed="0.016925"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.035260" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.033606" elapsed="0.001709"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.033588" elapsed="0.001749"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.035950" 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-07-28T01:55:21.035519" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.036550" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.036152" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.036632" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:21.036825" 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-07-28T01:55:21.033222" elapsed="0.003628"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.037009" 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-07-28T01:55:21.015473" elapsed="0.022041"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.045745" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.045403" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.053722" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.055687" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.055999" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.045903" elapsed="0.010123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.056489" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.056188" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.062569" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.056740" elapsed="0.007100"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.065957" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.063956" elapsed="0.002053"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.063927" elapsed="0.002106"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.136956" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.137020" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.066178" elapsed="0.070868"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.139097" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.137172" elapsed="0.001986"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.137142" elapsed="0.002042"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.139221" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:55:21.139471" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.139518" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.044989" elapsed="0.094552"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.141918" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.140195" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.140177" elapsed="0.001809"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.142645" 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-07-28T01:55:21.142141" elapsed="0.000531"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.143222" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.142837" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.143299" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.143509" 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-07-28T01:55:21.139818" elapsed="0.003729"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.143713" 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-07-28T01:55:21.044322" elapsed="0.099881"/>
</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-07-28T01:55:20.996445" elapsed="0.147818"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:20.989044" elapsed="0.155387"/>
</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-07-28T01:55:21.155894" 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-07-28T01:55:21.156080" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.155742" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.156764" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5300&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.156271" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.157248" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.156948" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.157737" 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-07-28T01:55:21.157430" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.158204" 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-07-28T01:55:21.157928" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.159156" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.158391" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.159720" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.159349" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.160541" 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-07-28T01:55:21.159986" elapsed="0.000601"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.161128" 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-07-28T01:55:21.160748" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.161687" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.161329" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.162232" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.161891" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.162789" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5300&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.162434" 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-07-28T01:55:21.155335" elapsed="0.007568"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.163445" 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-07-28T01:55:21.163057" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.163904" 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-07-28T01:55:21.163657" 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-07-28T01:55:21.172010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.171677" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.177207" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.177933" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.178080" 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-07-28T01:55:21.172171" elapsed="0.005949"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.178770" 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-07-28T01:55:21.178363" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.182516" 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-07-28T01:55:21.179057" elapsed="0.003535"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.185320" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.182690" elapsed="0.002799"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.182663" elapsed="0.002869"/>
</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-07-28T01:55:21.185700" 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-07-28T01:55:21.185949" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.185793" elapsed="0.000211"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.185777" elapsed="0.000251"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.186061" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:21.187764" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.187810" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.171322" elapsed="0.016511"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.190116" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.188411" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.188390" elapsed="0.001795"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.190782" 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-07-28T01:55:21.190337" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.191344" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.190975" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.191420" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:21.191631" 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-07-28T01:55:21.188062" 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-07-28T01:55:21.191819" 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-07-28T01:55:21.170739" elapsed="0.021552"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.200350" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.200031" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.208359" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.211952" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.212705" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.200529" elapsed="0.012244"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.213880" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.213209" elapsed="0.000802"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.220182" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.214379" elapsed="0.006740"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.223027" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.221214" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.221190" elapsed="0.001912"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.246396" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.246446" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.223249" elapsed="0.023237"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.248320" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.246573" elapsed="0.001805"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.246553" elapsed="0.001850"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.248437" elapsed="0.000079"/>
</return>
<msg time="2026-07-28T01:55:21.248705" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.248750" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.199634" elapsed="0.049139"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.250976" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.249379" elapsed="0.001642"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.249361" elapsed="0.001681"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.251636" 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-07-28T01:55:21.251195" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.252176" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.251826" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.252251" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.252430" 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-07-28T01:55:21.249013" 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-07-28T01:55:21.252632" 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-07-28T01:55:21.198969" elapsed="0.054122"/>
</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-07-28T01:55:21.151908" elapsed="0.101240"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.144812" elapsed="0.108484"/>
</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-07-28T01:55:21.264231" 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-07-28T01:55:21.264404" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.264087" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.265018" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.264600" elapsed="0.000446"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.265512" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.265196" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.265958" 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-07-28T01:55:21.265689" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.266403" 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-07-28T01:55:21.266133" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.267302" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.266596" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.267843" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.267509" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.268411" 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-07-28T01:55:21.268085" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.268954" 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-07-28T01:55:21.268625" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.269512" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.269148" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.270038" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.269714" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.270579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.270239" 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-07-28T01:55:21.263755" elapsed="0.006923"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.271213" 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-07-28T01:55:21.270829" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.271657" 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-07-28T01:55:21.271396" 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-07-28T01:55:21.279699" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.279367" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.285203" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.285820" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.285930" 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-07-28T01:55:21.279860" elapsed="0.006096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.286383" 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-07-28T01:55:21.286123" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.289947" 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-07-28T01:55:21.286594" elapsed="0.003428"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.292609" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.290124" elapsed="0.002635"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.290096" elapsed="0.002705"/>
</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-07-28T01:55:21.293011" 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-07-28T01:55:21.293335" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.293143" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.293119" elapsed="0.000325"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.293515" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:21.295505" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.295552" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.279044" elapsed="0.016532"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.297768" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.296143" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.296125" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.298401" 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-07-28T01:55:21.297988" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.298969" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.298612" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.299047" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:21.299230" 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-07-28T01:55:21.295804" elapsed="0.003452"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.299416" elapsed="0.000456"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:21.278474" elapsed="0.021463"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.307824" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.307512" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.317437" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.319311" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.319629" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.307982" elapsed="0.011674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.320080" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.319821" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.324138" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.320271" elapsed="0.004717"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.326901" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.325067" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.325046" elapsed="0.001928"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.349392" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.349441" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.327121" elapsed="0.022359"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.351321" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.349565" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.349545" elapsed="0.001857"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.351437" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:55:21.351660" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.351705" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.307119" elapsed="0.044609"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.353908" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.352298" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.352280" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.354588" 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-07-28T01:55:21.354146" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.355136" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.354783" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.355212" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.355393" 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-07-28T01:55:21.351958" 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-07-28T01:55:21.355594" 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-07-28T01:55:21.306497" elapsed="0.049556"/>
</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-07-28T01:55:21.260446" elapsed="0.095667"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.253613" elapsed="0.102622"/>
</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-07-28T01:55:21.367178" 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-07-28T01:55:21.367340" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.367035" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.367970" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0301d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.367538" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.368430" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.368150" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.368895" 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-07-28T01:55:21.368626" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.369337" 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-07-28T01:55:21.369071" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.370291" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.369528" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.370826" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.370494" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.371394" 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-07-28T01:55:21.371068" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.371934" 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-07-28T01:55:21.371607" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.372440" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.372126" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.372975" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.372656" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.373505" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0301d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.373171" 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-07-28T01:55:21.366703" elapsed="0.006901"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.374134" 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-07-28T01:55:21.373754" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.374610" 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-07-28T01:55:21.374353" 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-07-28T01:55:21.382650" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.382296" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.388103" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.388668" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.388773" 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-07-28T01:55:21.382807" elapsed="0.005992"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.389231" 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-07-28T01:55:21.388966" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.391824" 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-07-28T01:55:21.389423" elapsed="0.002454"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.393746" elapsed="0.000035"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.391952" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.391931" elapsed="0.001917"/>
</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-07-28T01:55:21.393995" 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-07-28T01:55:21.394223" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.394088" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.394072" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.394329" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:21.395978" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.396022" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.381979" elapsed="0.014066"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.398207" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.396618" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.396601" elapsed="0.001673"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.398872" 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-07-28T01:55:21.398422" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.399408" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.399061" elapsed="0.000373"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.399500" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.399680" 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-07-28T01:55:21.396267" 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-07-28T01:55:21.399862" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:21.381400" elapsed="0.018916"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.408201" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.407900" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.418401" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.420261" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.420573" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.408358" elapsed="0.012245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.421026" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.420769" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.425098" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.421215" elapsed="0.004686"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.427800" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.425978" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.425957" elapsed="0.001914"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.452438" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.452509" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.428013" elapsed="0.024521"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.454439" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.452634" elapsed="0.001883"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.452611" elapsed="0.001932"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.454580" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:21.454800" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.454843" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.407507" elapsed="0.047358"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.457111" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.455516" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.455496" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.457797" 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-07-28T01:55:21.457335" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.458341" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.457989" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.458416" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:21.458653" 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-07-28T01:55:21.455134" elapsed="0.003545"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.458840" elapsed="0.000464"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:21.406829" elapsed="0.052540"/>
</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-07-28T01:55:21.363381" elapsed="0.096049"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.356433" elapsed="0.103144"/>
</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-07-28T01:55:21.470561" 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-07-28T01:55:21.470738" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.470396" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.471356" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.470925" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.471836" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.471552" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.472282" 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-07-28T01:55:21.472014" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.472743" 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-07-28T01:55:21.472472" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.473516" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.472918" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.474042" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.473707" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.474649" 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-07-28T01:55:21.474307" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.475170" 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-07-28T01:55:21.474843" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.475741" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.475405" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.476260" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.475938" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.476851" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03236a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.476523" 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-07-28T01:55:21.470055" elapsed="0.006896"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.477516" 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-07-28T01:55:21.477103" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.477942" 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-07-28T01:55:21.477700" 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-07-28T01:55:21.485959" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.485648" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.491568" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.492321" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.492493" 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-07-28T01:55:21.486117" elapsed="0.006416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.493122" 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-07-28T01:55:21.492763" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.497000" 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-07-28T01:55:21.493513" elapsed="0.003560"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.499726" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.497185" elapsed="0.002649"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.497154" elapsed="0.002717"/>
</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-07-28T01:55:21.500078" 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-07-28T01:55:21.500395" elapsed="0.000114"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.500205" elapsed="0.000356"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.500183" elapsed="0.000412"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.500642" elapsed="0.000017"/>
</return>
<msg time="2026-07-28T01:55:21.502307" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.502352" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.485313" elapsed="0.017061"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.504592" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.502963" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.502945" elapsed="0.001714"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.505212" 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-07-28T01:55:21.504810" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.505767" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.505400" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.505842" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.506020" 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-07-28T01:55:21.502626" 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-07-28T01:55:21.506202" 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-07-28T01:55:21.484743" elapsed="0.021940"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.514591" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.514245" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.523110" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.524995" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.525291" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.514753" elapsed="0.010565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.525771" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.525507" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.529946" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.525962" elapsed="0.004824"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.532683" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.530868" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.530846" elapsed="0.001911"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.555859" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.555939" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.532910" elapsed="0.023056"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.557908" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.556055" elapsed="0.001911"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.556034" elapsed="0.001956"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.558026" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:21.558241" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.558285" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.513866" elapsed="0.044442"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.560616" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.558937" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.558918" elapsed="0.001784"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.561295" 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-07-28T01:55:21.560858" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.561861" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.561502" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.561936" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:21.562118" 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-07-28T01:55:21.558581" elapsed="0.003563"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.562304" 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-07-28T01:55:21.513225" elapsed="0.049567"/>
</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-07-28T01:55:21.466703" elapsed="0.096149"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.459792" elapsed="0.103184"/>
</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-07-28T01:55:21.574161" 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-07-28T01:55:21.574325" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.574018" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.574953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39494e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.574522" elapsed="0.000459"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.575415" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.575134" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.575885" 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-07-28T01:55:21.575612" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.576406" 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-07-28T01:55:21.576128" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.577355" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.576602" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.577896" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.577563" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.578483" 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-07-28T01:55:21.578142" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.579010" 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-07-28T01:55:21.578683" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.579533" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:21.579204" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.580128" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:21.579774" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.580705" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39494e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.580330" 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-07-28T01:55:21.573683" elapsed="0.007119"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.581330" 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-07-28T01:55:21.580951" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.581766" 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-07-28T01:55:21.581528" 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-07-28T01:55:21.589822" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.589512" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.595320" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.595870" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.595975" 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-07-28T01:55:21.589981" elapsed="0.006020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.596491" 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-07-28T01:55:21.596164" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.599051" 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-07-28T01:55:21.596683" elapsed="0.002420"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.601031" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.599175" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.599155" elapsed="0.001975"/>
</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-07-28T01:55:21.601277" 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-07-28T01:55:21.601525" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.601370" elapsed="0.000210"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.601354" elapsed="0.000249"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.601636" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:21.603262" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.603308" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.589177" 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-07-28T01:55:21.605571" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.603938" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.603920" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.606190" 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-07-28T01:55:21.605788" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.606751" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.606379" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.606827" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.607007" 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-07-28T01:55:21.603600" 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-07-28T01:55:21.607191" 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-07-28T01:55:21.588616" elapsed="0.019043"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.615471" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.615155" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.624736" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.626580" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.626877" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.615628" elapsed="0.011276"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.627329" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.627071" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.631406" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.627538" elapsed="0.004669"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.634077" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.632283" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.632262" elapsed="0.001888"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.656734" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.656797" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.634294" elapsed="0.022528"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.658651" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.656905" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.656885" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.658766" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:21.658970" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.659015" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.614779" elapsed="0.044259"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.661253" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.659618" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.659599" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.661897" 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-07-28T01:55:21.661484" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.662441" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.662087" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.662534" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:21.662717" 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-07-28T01:55:21.659261" 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-07-28T01:55:21.662901" 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-07-28T01:55:21.614147" elapsed="0.049208"/>
</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-07-28T01:55:21.570378" elapsed="0.093036"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.563326" elapsed="0.100223"/>
</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-07-28T01:55:21.674542" 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-07-28T01:55:21.674693" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.674383" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.675277" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.674873" elapsed="0.000431"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.675753" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.675459" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.676198" 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-07-28T01:55:21.675930" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.676657" 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-07-28T01:55:21.676372" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.677530" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:21.676832" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.678082" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.677724" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.678687" 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-07-28T01:55:21.678320" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.679232" 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-07-28T01:55:21.678899" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.679777" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.679437" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.680311" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:21.679983" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.680872" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.680536" 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-07-28T01:55:21.674053" elapsed="0.006921"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.681569" 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-07-28T01:55:21.681151" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.682005" 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-07-28T01:55:21.681754" 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-07-28T01:55:21.690238" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.689917" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.695583" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.696126" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.696230" 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-07-28T01:55:21.690396" elapsed="0.005860"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.696706" 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-07-28T01:55:21.696420" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.699341" 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-07-28T01:55:21.696901" elapsed="0.002497"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.701284" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.699484" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.699449" elapsed="0.001929"/>
</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-07-28T01:55:21.701538" 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-07-28T01:55:21.701807" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.701669" elapsed="0.000191"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.701651" elapsed="0.000232"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.701916" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:21.703546" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.703591" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.689575" elapsed="0.014039"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.705782" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.704153" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.704136" elapsed="0.001713"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.706394" 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-07-28T01:55:21.705996" elapsed="0.000424"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.706946" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.706597" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.707022" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:21.707201" 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-07-28T01:55:21.703825" 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-07-28T01:55:21.707385" 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-07-28T01:55:21.688945" elapsed="0.018909"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.715692" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.715369" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.722223" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.724114" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.724433" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.715848" elapsed="0.008626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.724919" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.724655" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.728996" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.725106" elapsed="0.004682"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.731632" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.729865" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.729845" elapsed="0.001861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.753406" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.753458" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.731849" elapsed="0.021646"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.755345" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.753579" elapsed="0.001823"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.753560" elapsed="0.001868"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.755479" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:21.755691" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.755734" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.714965" elapsed="0.040792"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.757954" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.756339" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.756321" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.758607" 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-07-28T01:55:21.758171" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.759148" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.758800" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.759222" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:21.759401" 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-07-28T01:55:21.755995" 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-07-28T01:55:21.759603" 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-07-28T01:55:21.714337" elapsed="0.045727"/>
</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-07-28T01:55:21.670781" elapsed="0.089343"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.663850" elapsed="0.096396"/>
</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-07-28T01:55:21.771187" 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-07-28T01:55:21.771341" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.771043" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.771950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0515cb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.771542" elapsed="0.000436"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.772411" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.772131" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.772879" 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-07-28T01:55:21.772608" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.773322" 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-07-28T01:55:21.773054" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.774147" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:21.773514" elapsed="0.000663"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.774687" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.774333" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.775261" 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-07-28T01:55:21.774936" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.775799" 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-07-28T01:55:21.775458" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.776302" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.775990" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.776831" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:21.776511" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.777343" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0515cb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.777025" 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-07-28T01:55:21.770711" elapsed="0.006729"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.778032" 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-07-28T01:55:21.777612" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.778455" 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-07-28T01:55:21.778216" 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-07-28T01:55:21.786422" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.786114" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.791900" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.792432" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.792561" 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-07-28T01:55:21.786596" elapsed="0.005996"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.793004" 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-07-28T01:55:21.792753" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.795588" 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-07-28T01:55:21.793190" elapsed="0.002452"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.797460" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.795714" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.795695" elapsed="0.001874"/>
</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-07-28T01:55:21.797713" 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-07-28T01:55:21.797975" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.797840" elapsed="0.000204"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.797823" elapsed="0.000245"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.798101" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:21.799734" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.799779" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.785761" elapsed="0.014041"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.801931" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.800345" elapsed="0.001631"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.800327" elapsed="0.001671"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.802590" 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-07-28T01:55:21.802169" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.803128" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.802778" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.803203" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.803382" 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-07-28T01:55:21.800015" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.803581" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:21.785184" elapsed="0.018850"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.811868" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.811566" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.823192" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.825042" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.825343" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.812024" elapsed="0.013346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.825840" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.825567" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.829918" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.826028" elapsed="0.004747"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.832675" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.830859" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.830834" elapsed="0.001917"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.856574" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.856622" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.832910" elapsed="0.023736"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.858562" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.856728" elapsed="0.001901"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.856708" elapsed="0.001946"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.858689" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:21.858901" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.858945" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.811174" elapsed="0.047794"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.861161" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.859570" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.859551" elapsed="0.001677"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.861819" 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-07-28T01:55:21.861379" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.862362" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.862009" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.862437" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:55:21.862679" 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-07-28T01:55:21.859209" elapsed="0.003497"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.862871" 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-07-28T01:55:21.810553" elapsed="0.052797"/>
</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-07-28T01:55:21.767419" elapsed="0.095989"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.760563" elapsed="0.103013"/>
</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-07-28T01:55:21.874803" 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-07-28T01:55:21.874962" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:21.874640" elapsed="0.000351"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.875580" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.875145" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.876050" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.875765" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.876524" 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-07-28T01:55:21.876232" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.876978" 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-07-28T01:55:21.876705" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.877820" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.877161" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.878346" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.878011" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.879002" 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-07-28T01:55:21.878613" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.879549" 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-07-28T01:55:21.879200" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.880064" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:21.879746" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.880604" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.880264" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.881130" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.880805" 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-07-28T01:55:21.874279" elapsed="0.006947"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.881785" 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-07-28T01:55:21.881375" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.882212" 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-07-28T01:55:21.881971" 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-07-28T01:55:21.890323" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.890009" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.895578" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.896312" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:21.896479" 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-07-28T01:55:21.890500" elapsed="0.006018"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.897123" 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-07-28T01:55:21.896758" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.900778" 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-07-28T01:55:21.897392" elapsed="0.003463"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:21.903526" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:21.900958" elapsed="0.002654"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.900930" elapsed="0.002708"/>
</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-07-28T01:55:21.903805" 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-07-28T01:55:21.904078" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.903938" elapsed="0.000191"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:21.903921" elapsed="0.000231"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.904184" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:21.905848" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:21.905893" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.889690" elapsed="0.016226"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.908127" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.906489" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.906459" elapsed="0.001736"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.908796" 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-07-28T01:55:21.908354" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.909358" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.908988" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.909435" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:55:21.909651" 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-07-28T01:55:21.906137" elapsed="0.003540"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:21.909839" 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-07-28T01:55:21.889098" elapsed="0.021219"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.918437" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.918130" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:21.927280" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:21.931228" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:21.931889" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:21.918634" elapsed="0.013315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.932923" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:21.932312" elapsed="0.000714"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.938497" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:21.933348" elapsed="0.005917"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.941117" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.939338" elapsed="0.001828"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.939318" elapsed="0.001872"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.963670" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:21.963719" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:21.941332" elapsed="0.022412"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:21.965643" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:21.963827" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.963807" elapsed="0.001918"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:21.965758" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:21.965964" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:21.966008" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:21.917732" elapsed="0.048300"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:21.968258" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:21.966622" elapsed="0.001682"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:21.966603" elapsed="0.001723"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.968913" 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-07-28T01:55:21.968496" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.969477" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:21.969105" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:21.969555" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:21.969737" 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-07-28T01:55:21.966261" 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-07-28T01:55:21.969923" 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-07-28T01:55:21.917065" elapsed="0.053314"/>
</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-07-28T01:55:21.870980" elapsed="0.099459"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.863918" elapsed="0.106660"/>
</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-07-28T01:55:21.981542" 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-07-28T01:55:21.981694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.981386" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:21.982289" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37297b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:21.981877" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.982766" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:21.982485" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.983211" 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-07-28T01:55:21.982944" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:21.983704" 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-07-28T01:55:21.983386" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:21.984568" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:21.983881" elapsed="0.000718"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.985087" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.984756" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.985679" 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-07-28T01:55:21.985324" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.986204" 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-07-28T01:55:21.985876" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.986736" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:21.986400" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.987255" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:21.986934" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.987808" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37297b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:21.987457" 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-07-28T01:55:21.981053" elapsed="0.006852"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.988438" 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-07-28T01:55:21.988056" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:21.988875" 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-07-28T01:55:21.988636" 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-07-28T01:55:21.996942" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:21.996632" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.002017" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.002566" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.002721" 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-07-28T01:55:21.997098" elapsed="0.005661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.003378" 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-07-28T01:55:22.002999" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.007130" 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-07-28T01:55:22.003676" elapsed="0.003532"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.009899" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.007308" elapsed="0.002689"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.007281" 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-07-28T01:55:22.010299" 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-07-28T01:55:22.010660" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.010431" elapsed="0.000308"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.010408" elapsed="0.000363"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.010817" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:22.013045" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.013093" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:21.996300" 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-07-28T01:55:22.015352" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.013713" elapsed="0.001685"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.013695" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.016027" 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-07-28T01:55:22.015594" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.016614" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.016223" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.016692" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.016876" 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-07-28T01:55:22.013347" 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-07-28T01:55:22.017074" 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-07-28T01:55:21.995710" elapsed="0.021848"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.025681" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.025341" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.051769" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.055875" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.056556" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.025842" elapsed="0.030776"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.057595" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.056982" elapsed="0.000718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.063338" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.058024" elapsed="0.006086"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.065972" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.064185" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.064165" elapsed="0.001879"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.087166" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.087214" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.066186" elapsed="0.021052"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.090604" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.087319" elapsed="0.003345"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.087299" elapsed="0.003390"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.090723" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.090924" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.090988" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.024944" elapsed="0.066068"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.093210" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.091592" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.091574" elapsed="0.001703"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.093852" 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-07-28T01:55:22.093427" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.094403" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.094045" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.094497" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.094679" 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-07-28T01:55:22.091236" 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-07-28T01:55:22.094863" 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-07-28T01:55:22.024264" elapsed="0.071051"/>
</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-07-28T01:55:21.977781" elapsed="0.117592"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:21.970873" elapsed="0.124634"/>
</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-07-28T01:55:22.106410" 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-07-28T01:55:22.106571" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:22.106271" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.107157" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0130&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.106762" elapsed="0.000423"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.107632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.107336" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.108077" 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-07-28T01:55:22.107809" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.108535" 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-07-28T01:55:22.108250" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.109352" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:22.108746" elapsed="0.000636"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.109886" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.109555" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.110444" 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-07-28T01:55:22.110121" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.110994" 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-07-28T01:55:22.110668" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.111514" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:22.111186" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.112026" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:22.111709" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.112554" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0130&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.112221" 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-07-28T01:55:22.105944" elapsed="0.006706"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.113189" 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-07-28T01:55:22.112812" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.113624" 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-07-28T01:55:22.113367" 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-07-28T01:55:22.121585" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.121264" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.126957" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.127478" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.127586" 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-07-28T01:55:22.121745" elapsed="0.005869"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.128043" 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-07-28T01:55:22.127783" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.130601" 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-07-28T01:55:22.128232" elapsed="0.002421"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.132508" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.130723" elapsed="0.001854"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.130704" 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-07-28T01:55:22.132745" 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-07-28T01:55:22.133045" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.132875" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.132857" elapsed="0.000265"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.133154" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:22.135277" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.135339" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.120948" elapsed="0.014423"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.138413" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.136145" elapsed="0.002352"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.136121" elapsed="0.002409"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.139293" 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-07-28T01:55:22.138741" elapsed="0.000588"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.140071" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.139577" elapsed="0.000530"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.140176" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:22.140425" 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-07-28T01:55:22.135686" elapsed="0.004796"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.140708" 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-07-28T01:55:22.120353" elapsed="0.021033"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.149306" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.149004" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.158038" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.162157" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.162830" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.149479" elapsed="0.013412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.163857" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.163248" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.168967" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.164281" elapsed="0.005479"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.171612" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.169833" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.169814" elapsed="0.001874"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.193432" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.193533" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.171827" elapsed="0.021732"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.195595" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.193640" elapsed="0.002012"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.193620" elapsed="0.002056"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.195709" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.195947" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.195991" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.148595" elapsed="0.047419"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.198391" elapsed="0.000050"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.196622" elapsed="0.001880"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.196604" elapsed="0.001921"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.199131" 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-07-28T01:55:22.198683" elapsed="0.000515"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.199784" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.199366" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.199861" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.200040" 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-07-28T01:55:22.196231" elapsed="0.003834"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.200257" 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-07-28T01:55:22.147959" elapsed="0.052815"/>
</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-07-28T01:55:22.102677" elapsed="0.098153"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.095784" elapsed="0.105161"/>
</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-07-28T01:55:22.212716" 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-07-28T01:55:22.212855" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.212571" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.213532" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.213035" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.214034" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.213751" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.214541" 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-07-28T01:55:22.214212" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.215034" 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-07-28T01:55:22.214718" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.215988" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.215209" elapsed="0.000810"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.216602" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.216214" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.217214" 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-07-28T01:55:22.216842" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.217852" 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-07-28T01:55:22.217415" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.218413" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.218052" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.218994" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.218632" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.219579" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.219197" elapsed="0.000425"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:22.212185" elapsed="0.007494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.220259" 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-07-28T01:55:22.219832" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.220747" 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-07-28T01:55:22.220443" elapsed="0.000371"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.229328" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.228980" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.234558" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.235357" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.235528" 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-07-28T01:55:22.229503" elapsed="0.006063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.236203" 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-07-28T01:55:22.235791" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.240177" 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-07-28T01:55:22.236542" elapsed="0.003709"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.242967" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.240398" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.240368" elapsed="0.002697"/>
</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-07-28T01:55:22.243250" 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-07-28T01:55:22.243532" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.243345" elapsed="0.000242"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.243328" elapsed="0.000282"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.243643" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:22.245361" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.245407" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.228623" elapsed="0.016807"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.247752" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.246050" elapsed="0.001749"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.246031" elapsed="0.001790"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.248411" 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-07-28T01:55:22.247971" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.249015" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.248619" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.249091" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.249308" 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-07-28T01:55:22.245662" elapsed="0.003672"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.249510" elapsed="0.000463"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:22.228003" elapsed="0.022033"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.258567" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.258214" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.267200" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.270003" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.270453" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.258726" elapsed="0.011788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.271191" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.270786" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.276613" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.271485" elapsed="0.005936"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.279446" elapsed="0.000031"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.277544" elapsed="0.001969"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.277491" elapsed="0.002046"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.303228" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.303276" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.279679" elapsed="0.023620"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.305324" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.303419" elapsed="0.001961"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.303400" elapsed="0.002005"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.305439" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:55:22.305694" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.305739" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.257769" elapsed="0.047993"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.308133" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.306380" elapsed="0.001798"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.306361" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.308823" 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-07-28T01:55:22.308350" elapsed="0.000500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.309410" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.309014" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.309503" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:22.309722" 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-07-28T01:55:22.305982" elapsed="0.003766"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.309906" elapsed="0.000447"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:22.257062" elapsed="0.053355"/>
</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-07-28T01:55:22.208621" elapsed="0.101869"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.201244" elapsed="0.109406"/>
</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-07-28T01:55:22.322276" 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-07-28T01:55:22.322452" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.322096" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.323162" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.322650" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.323645" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.323344" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.324138" 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-07-28T01:55:22.323826" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.324644" 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-07-28T01:55:22.324314" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.325675" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.324861" elapsed="0.000846"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.326242" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.325903" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.326933" 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-07-28T01:55:22.326554" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.327519" 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-07-28T01:55:22.327167" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.328117" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.327760" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.328703" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.328320" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.329275" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ee7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.328906" 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-07-28T01:55:22.321764" elapsed="0.007609"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.330008" 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-07-28T01:55:22.329577" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.330535" 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-07-28T01:55:22.330194" 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-07-28T01:55:22.338989" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.338679" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.345417" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.345992" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.346097" 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-07-28T01:55:22.339215" elapsed="0.006908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.346633" 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-07-28T01:55:22.346283" elapsed="0.000399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.350055" 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-07-28T01:55:22.346828" elapsed="0.003392"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.353071" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.350324" elapsed="0.002843"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.350297" elapsed="0.002906"/>
</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-07-28T01:55:22.353456" 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-07-28T01:55:22.353799" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.353607" elapsed="0.000313"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.353584" elapsed="0.000370"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.353999" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:22.356282" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.356330" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.338271" elapsed="0.018083"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.358689" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.356997" elapsed="0.001738"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.356979" elapsed="0.001779"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.359312" 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-07-28T01:55:22.358908" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.359916" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.359558" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.359992" elapsed="0.000067"/>
</return>
<msg time="2026-07-28T01:55:22.360213" 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-07-28T01:55:22.356622" elapsed="0.003617"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.360399" elapsed="0.000450"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:22.337668" elapsed="0.023246"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.369359" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.369057" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.378999" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.383138" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.383808" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.369534" elapsed="0.014334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.384845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.384228" elapsed="0.000720"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.390437" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.385273" 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-07-28T01:55:22.393089" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.391322" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.391302" elapsed="0.001858"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.415222" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.415269" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.393305" elapsed="0.021988"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.417271" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.415373" elapsed="0.001968"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.415354" elapsed="0.002012"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.417400" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:55:22.417642" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.417686" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.368674" elapsed="0.049034"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.420009" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.418293" elapsed="0.001761"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.418274" elapsed="0.001801"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.420697" 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-07-28T01:55:22.420241" elapsed="0.000484"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.421260" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.420890" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.421335" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.421532" 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-07-28T01:55:22.417951" elapsed="0.003606"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.421730" 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-07-28T01:55:22.367966" elapsed="0.054224"/>
</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-07-28T01:55:22.318258" elapsed="0.103989"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.310947" elapsed="0.111435"/>
</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-07-28T01:55:22.433867" 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-07-28T01:55:22.434029" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.433705" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.434707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.434227" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.435217" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.434894" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.435707" 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-07-28T01:55:22.435403" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.436172" 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-07-28T01:55:22.435896" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.437184" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.436364" elapsed="0.000851"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.437746" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.437375" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.438353" 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-07-28T01:55:22.437992" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.438913" 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-07-28T01:55:22.438570" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.439454" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.439109" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.440012" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.439675" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.440716" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.440209" elapsed="0.000550"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:22.433348" elapsed="0.007469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.441357" 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-07-28T01:55:22.440970" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.441801" 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-07-28T01:55:22.441557" 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-07-28T01:55:22.449821" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.449501" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.455812" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.456358" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.456487" 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-07-28T01:55:22.449988" elapsed="0.006527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.456953" 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-07-28T01:55:22.456693" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.459691" 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-07-28T01:55:22.457157" elapsed="0.002657"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.462710" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.459940" elapsed="0.002871"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.459910" elapsed="0.002939"/>
</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-07-28T01:55:22.463079" 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-07-28T01:55:22.463454" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.463230" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.463205" elapsed="0.000395"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.463649" elapsed="0.000024"/>
</return>
<msg time="2026-07-28T01:55:22.466198" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.466266" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.449161" 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-07-28T01:55:22.469437" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.467183" elapsed="0.002315"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.467156" elapsed="0.002365"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.470104" 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-07-28T01:55:22.469684" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.470728" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.470313" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.470806" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:22.471007" 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-07-28T01:55:22.466656" elapsed="0.004377"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.471205" elapsed="0.000446"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:22.448595" 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-07-28T01:55:22.479809" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.479485" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.489411" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.492343" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.492810" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.479974" elapsed="0.012876"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.493767" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.493105" elapsed="0.000733"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.499851" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.494058" elapsed="0.006871"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.502836" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.501003" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.500983" elapsed="0.001924"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.524485" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.524534" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.503053" elapsed="0.021505"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.528035" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.524639" elapsed="0.003456"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.524619" elapsed="0.003501"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.528155" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.528363" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.528410" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.479075" elapsed="0.049358"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.530692" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.529025" elapsed="0.001711"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.529007" elapsed="0.001751"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.531341" 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-07-28T01:55:22.530920" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.531958" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.531550" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.532034" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.532218" 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-07-28T01:55:22.528672" 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-07-28T01:55:22.532401" 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-07-28T01:55:22.478411" elapsed="0.054479"/>
</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-07-28T01:55:22.429963" elapsed="0.102983"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.422711" elapsed="0.110354"/>
</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-07-28T01:55:22.544376" 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-07-28T01:55:22.544532" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.544234" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.545151" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842ca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.544727" elapsed="0.000452"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.545642" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.545344" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.546109" 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-07-28T01:55:22.545836" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.546602" 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-07-28T01:55:22.546287" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.547549" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.546780" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.548124" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.547739" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.548720" 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-07-28T01:55:22.548371" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.549275" 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-07-28T01:55:22.548928" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.549821" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.549486" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.550349" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.550023" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.550908" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3842ca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.550575" 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-07-28T01:55:22.543866" elapsed="0.007143"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.551591" 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-07-28T01:55:22.551173" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.552021" 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-07-28T01:55:22.551777" 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-07-28T01:55:22.560281" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.559931" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.566009" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.566810" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.566983" 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-07-28T01:55:22.560443" elapsed="0.006583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.567694" 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-07-28T01:55:22.567269" elapsed="0.000495"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.571697" 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-07-28T01:55:22.567998" elapsed="0.003777"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.574724" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.571943" elapsed="0.002886"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.571914" elapsed="0.002953"/>
</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-07-28T01:55:22.575093" 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-07-28T01:55:22.575435" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.575232" elapsed="0.000306"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.575206" elapsed="0.000380"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.575635" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:22.578281" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.578350" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.559597" elapsed="0.018788"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.581400" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.579259" elapsed="0.002189"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.579230" elapsed="0.002259"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.582058" 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-07-28T01:55:22.581640" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.582665" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.582263" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.582745" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.582927" 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-07-28T01:55:22.578739" elapsed="0.004227"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.583131" 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-07-28T01:55:22.559000" elapsed="0.024630"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.591715" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.591377" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.601789" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.604643" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.605083" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.591872" elapsed="0.013253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.605849" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.605431" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.612007" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.606146" elapsed="0.007048"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.615196" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.613303" elapsed="0.001946"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.613274" elapsed="0.001998"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.636670" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.636743" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.615414" elapsed="0.021354"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.638727" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.636848" elapsed="0.001946"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.636829" elapsed="0.001990"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.638854" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:22.639058" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.639102" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.590980" elapsed="0.048157"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.641590" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.639729" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.639711" elapsed="0.001958"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.642260" 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-07-28T01:55:22.641819" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.642878" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.642457" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.642956" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:22.643140" 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-07-28T01:55:22.639362" elapsed="0.003817"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.643342" 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-07-28T01:55:22.590331" elapsed="0.053559"/>
</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-07-28T01:55:22.540505" elapsed="0.103446"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.533356" elapsed="0.110717"/>
</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-07-28T01:55:22.656352" 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-07-28T01:55:22.656542" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.656180" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.657544" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032b060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.656762" elapsed="0.000811"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.658128" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.657783" elapsed="0.000371"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.658617" 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-07-28T01:55:22.658320" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.659084" 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-07-28T01:55:22.658812" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.660064" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.659266" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.660626" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.660259" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.661256" 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-07-28T01:55:22.660882" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.661826" 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-07-28T01:55:22.661459" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.662371" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.662037" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.662940" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.662597" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.663500" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032b060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.663152" 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-07-28T01:55:22.655766" elapsed="0.007847"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.664174" 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-07-28T01:55:22.663770" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.664637" 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-07-28T01:55:22.664359" 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-07-28T01:55:22.672912" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.672587" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.677909" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.678436" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.678580" 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-07-28T01:55:22.673185" elapsed="0.005425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.679058" 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-07-28T01:55:22.678786" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.681868" 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-07-28T01:55:22.679265" elapsed="0.002693"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.684721" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.682109" elapsed="0.002708"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.682080" 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-07-28T01:55:22.685098" 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-07-28T01:55:22.685451" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.685234" elapsed="0.000317"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.685210" elapsed="0.000386"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.685651" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:22.688090" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.688168" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.672234" elapsed="0.015967"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.690932" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.689079" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.689051" elapsed="0.001961"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.691602" 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-07-28T01:55:22.691159" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.692175" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.691805" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.692261" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:22.692442" 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-07-28T01:55:22.688538" elapsed="0.003946"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.692654" 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-07-28T01:55:22.671647" elapsed="0.021506"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.701316" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.700984" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.711372" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.713946" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.714344" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.701538" elapsed="0.012842"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.714984" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.714630" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.720639" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.715246" elapsed="0.006539"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.723618" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.721860" elapsed="0.001806"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.721840" elapsed="0.001849"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.794058" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.794121" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.723830" elapsed="0.070315"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.796122" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.794269" elapsed="0.001912"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.794238" elapsed="0.001969"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.796244" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:55:22.796478" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.796524" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.700588" elapsed="0.095959"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.798782" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.797164" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.797145" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.799472" 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-07-28T01:55:22.799002" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.800017" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.799664" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.800093" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:22.800272" 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-07-28T01:55:22.796804" 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-07-28T01:55:22.800475" 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-07-28T01:55:22.699923" elapsed="0.101021"/>
</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-07-28T01:55:22.651983" elapsed="0.149020"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.644270" elapsed="0.156854"/>
</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-07-28T01:55:22.812002" 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-07-28T01:55:22.812169" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.811859" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.812798" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01efbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.812348" elapsed="0.000479"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.813262" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.812981" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.813725" 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-07-28T01:55:22.813439" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.814257" 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-07-28T01:55:22.813900" elapsed="0.000384"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.815336" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.814436" elapsed="0.000930"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.815880" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.815541" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.816501" 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-07-28T01:55:22.816156" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.817018" 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-07-28T01:55:22.816694" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.817537" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.817208" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.818047" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.817731" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.818612" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01efbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.818274" 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-07-28T01:55:22.811520" elapsed="0.007189"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.819236" 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-07-28T01:55:22.818857" elapsed="0.000409"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.819671" 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-07-28T01:55:22.819414" 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-07-28T01:55:22.827418" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.827112" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.832342" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.832919" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.833022" 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-07-28T01:55:22.827595" elapsed="0.005453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.833482" 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-07-28T01:55:22.833210" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.836678" 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-07-28T01:55:22.833674" elapsed="0.003078"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.839378" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.836903" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.836874" 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-07-28T01:55:22.839741" 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-07-28T01:55:22.840058" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.839869" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.839846" elapsed="0.000318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.840209" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:22.842543" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.842607" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.826795" elapsed="0.015836"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.844772" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.843174" elapsed="0.001643"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.843156" elapsed="0.001683"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.845386" 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-07-28T01:55:22.844987" elapsed="0.000425"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.845945" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.845590" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.846020" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:22.846198" 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-07-28T01:55:22.842843" 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-07-28T01:55:22.846396" 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-07-28T01:55:22.826222" elapsed="0.020644"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.854833" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.854534" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.863123" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.865744" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.866210" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.854988" elapsed="0.011261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.867011" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.866591" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.872871" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.867276" elapsed="0.006776"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.876479" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.874173" elapsed="0.002361"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.874139" elapsed="0.002418"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.897872" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:22.897933" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.876709" elapsed="0.021249"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:22.899989" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.898072" elapsed="0.001977"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.898045" elapsed="0.002031"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:22.900113" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:22.900335" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:22.900380" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.854127" elapsed="0.046277"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.902788" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.901080" elapsed="0.001754"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.901060" elapsed="0.001797"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.903567" 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-07-28T01:55:22.903014" elapsed="0.000595"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.904162" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.903785" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.904238" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:22.904442" 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-07-28T01:55:22.900685" elapsed="0.003814"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.904676" elapsed="0.000432"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:22.853514" elapsed="0.051658"/>
</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-07-28T01:55:22.808210" elapsed="0.097021"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.801326" elapsed="0.104029"/>
</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-07-28T01:55:22.917199" 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-07-28T01:55:22.917393" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.917036" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:22.918121" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b100&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:22.917626" elapsed="0.000525"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.918699" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:22.918367" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.919203" 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-07-28T01:55:22.918914" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:22.919692" 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-07-28T01:55:22.919389" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:22.920950" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.919886" elapsed="0.001098"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.921545" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.921162" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.922165" 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-07-28T01:55:22.921827" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.922798" 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-07-28T01:55:22.922426" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.923401" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:22.923066" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.923977" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:22.923634" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.924534" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b100&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:22.924179" 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-07-28T01:55:22.916672" elapsed="0.007976"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.925224" 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-07-28T01:55:22.924805" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.925700" 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-07-28T01:55:22.925419" elapsed="0.000349"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.934027" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.933691" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.940176" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.941049" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:22.941222" 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-07-28T01:55:22.934203" elapsed="0.007059"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.942017" 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-07-28T01:55:22.941592" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.946447" 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-07-28T01:55:22.942324" elapsed="0.004315"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:22.948913" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-07-28T01:55:22.946762" elapsed="0.002230"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.946728" elapsed="0.002290"/>
</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-07-28T01:55:22.949186" 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-07-28T01:55:22.949418" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:22.949279" elapsed="0.000209"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:22.949263" elapsed="0.000262"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.949559" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:22.951395" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:22.951441" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:22.933336" elapsed="0.018146"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.953693" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.952084" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.952066" elapsed="0.001696"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.954335" 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-07-28T01:55:22.953919" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.954941" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:22.954545" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:22.955016" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:22.955235" 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-07-28T01:55:22.951724" elapsed="0.003537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:22.955421" 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-07-28T01:55:22.932721" elapsed="0.023182"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.964165" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:22.963825" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:22.972086" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:22.974913" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:22.975493" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:22.964329" elapsed="0.011207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.976262" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:22.975832" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:22.981437" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:22.976569" elapsed="0.005673"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:22.984222" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:22.982332" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:22.982305" elapsed="0.002009"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.010705" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.010778" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:22.984496" elapsed="0.026309"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.012958" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.010924" elapsed="0.002097"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.010896" elapsed="0.002151"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.013085" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:23.013325" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.013374" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:22.963423" elapsed="0.049976"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.015756" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.014079" elapsed="0.001722"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.014057" elapsed="0.001767"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.016502" 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-07-28T01:55:23.015998" elapsed="0.000534"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.017104" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.016727" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.017193" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:23.017382" 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-07-28T01:55:23.013690" elapsed="0.003717"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.017599" 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-07-28T01:55:22.962703" elapsed="0.055396"/>
</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-07-28T01:55:22.913052" elapsed="0.105109"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:22.905612" elapsed="0.112673"/>
</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-07-28T01:55:23.029911" 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-07-28T01:55:23.030107" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.029744" elapsed="0.000392"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.030842" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.030312" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.031328" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.031024" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.031811" 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-07-28T01:55:23.031524" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.032272" 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-07-28T01:55:23.032000" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.035920" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.032477" elapsed="0.003477"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.036499" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.036122" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.037101" 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-07-28T01:55:23.036759" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.037657" 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-07-28T01:55:23.037300" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.038197" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.037856" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.038751" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.038394" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.039296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.038964" 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-07-28T01:55:23.029363" elapsed="0.010046"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.040033" 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-07-28T01:55:23.039591" elapsed="0.000474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.040480" 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-07-28T01:55:23.040222" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.048592" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.048243" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.053527" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.054135" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.054251" 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-07-28T01:55:23.048749" elapsed="0.005529"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.054745" 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-07-28T01:55:23.054453" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.057422" 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-07-28T01:55:23.054934" elapsed="0.002591"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.059447" elapsed="0.000050"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.057609" elapsed="0.001927"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.057582" elapsed="0.001979"/>
</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-07-28T01:55:23.059706" 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-07-28T01:55:23.059930" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.059796" elapsed="0.000221"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.059780" elapsed="0.000260"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.060073" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:23.061710" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.061755" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.047915" elapsed="0.013864"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.063911" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.062320" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.062302" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.064558" 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-07-28T01:55:23.064144" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.065091" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.064745" elapsed="0.000372"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.065165" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.065341" 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-07-28T01:55:23.061992" 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-07-28T01:55:23.065542" 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-07-28T01:55:23.047283" elapsed="0.018713"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.073771" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.073472" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.081481" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.083279" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.083581" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.073925" elapsed="0.009688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.084028" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.083773" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.088090" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.084239" elapsed="0.004670"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.090742" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.088982" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.088962" elapsed="0.001851"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.117226" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.117274" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.090952" elapsed="0.026345"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.119107" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.117377" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.117357" elapsed="0.001829"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.119219" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.119414" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.119478" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.073083" elapsed="0.046419"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.121741" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.120055" elapsed="0.001731"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.120037" elapsed="0.001771"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.122358" 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-07-28T01:55:23.121958" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.122914" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.122563" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.122989" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.123167" 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-07-28T01:55:23.119723" 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-07-28T01:55:23.123348" 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-07-28T01:55:23.072457" elapsed="0.051362"/>
</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-07-28T01:55:23.025858" elapsed="0.098018"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.018661" elapsed="0.105338"/>
</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-07-28T01:55:23.135045" 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-07-28T01:55:23.135192" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.134903" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.135825" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1c60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.135372" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.136281" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.136005" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.136769" 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-07-28T01:55:23.136495" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.137210" 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-07-28T01:55:23.136944" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.138168" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.137384" elapsed="0.000815"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.138712" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.138356" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.139275" 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-07-28T01:55:23.138950" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.139824" 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-07-28T01:55:23.139488" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.140336" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.140020" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.140895" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.140571" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.141437" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1c60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.141095" 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-07-28T01:55:23.134575" elapsed="0.006981"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.142110" 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-07-28T01:55:23.141721" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.142742" 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-07-28T01:55:23.142303" elapsed="0.000508"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.150664" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.150338" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.155972" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.156504" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.156641" 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-07-28T01:55:23.150823" elapsed="0.005846"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.157090" 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-07-28T01:55:23.156831" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.159634" 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-07-28T01:55:23.157283" elapsed="0.002444"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.161637" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.159802" elapsed="0.001933"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.159782" elapsed="0.001988"/>
</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-07-28T01:55:23.161974" 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-07-28T01:55:23.162302" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.162106" elapsed="0.000271"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.162084" elapsed="0.000326"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.162479" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:23.164803" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.164869" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.150019" elapsed="0.014884"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.167941" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.165703" elapsed="0.002300"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.165679" elapsed="0.002356"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.168883" 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-07-28T01:55:23.168241" elapsed="0.000681"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.169665" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.169152" elapsed="0.000539"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.169742" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.169923" 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-07-28T01:55:23.165206" elapsed="0.004742"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.170107" 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-07-28T01:55:23.149442" elapsed="0.021137"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.178917" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.178548" elapsed="0.000400"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.186999" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.188936" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.189259" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.179092" elapsed="0.010194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.189737" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.189468" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.193857" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.189927" 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-07-28T01:55:23.196480" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.194708" elapsed="0.001825"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.194684" elapsed="0.001871"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.224837" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.224886" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.196700" elapsed="0.028210"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.226884" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.225002" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.224980" elapsed="0.002002"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.227024" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:55:23.227274" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.227325" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.178111" elapsed="0.049240"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.229847" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.228076" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.228054" elapsed="0.001861"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.230527" 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-07-28T01:55:23.230071" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.231071" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.230718" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.231147" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.231326" 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-07-28T01:55:23.227672" elapsed="0.003680"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.231526" 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-07-28T01:55:23.177237" elapsed="0.054755"/>
</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-07-28T01:55:23.131266" elapsed="0.100784"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.124305" elapsed="0.107869"/>
</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-07-28T01:55:23.243190" 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-07-28T01:55:23.243357" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.243047" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.243984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f35080&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.243554" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.244453" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.244166" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.244919" 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-07-28T01:55:23.244648" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.245381" 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-07-28T01:55:23.245094" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.246418" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.245574" elapsed="0.000878"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.246960" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.246626" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.247556" 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-07-28T01:55:23.247211" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.248083" 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-07-28T01:55:23.247754" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.248611" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.248277" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.249131" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.248809" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.249710" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f35080&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.249362" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:23.242712" elapsed="0.007097"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.250349" 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-07-28T01:55:23.249959" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.250793" 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-07-28T01:55:23.250549" 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-07-28T01:55:23.258759" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.258436" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.263590" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.264142" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.264247" 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-07-28T01:55:23.258917" elapsed="0.005356"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.264721" 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-07-28T01:55:23.264438" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.267984" 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-07-28T01:55:23.264914" elapsed="0.003144"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.270646" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.268159" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.268132" elapsed="0.002694"/>
</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-07-28T01:55:23.271030" 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-07-28T01:55:23.271347" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.271158" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.271135" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.271521" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:23.273768" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.273814" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.258120" elapsed="0.015717"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.275973" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.274384" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.274366" elapsed="0.001674"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.276601" 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-07-28T01:55:23.276186" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.277189" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.276791" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.277264" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.277472" 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-07-28T01:55:23.274051" elapsed="0.003448"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.277663" elapsed="0.000390"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:23.257560" elapsed="0.020556"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.285949" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.285646" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.294033" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.296719" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.297147" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.286103" elapsed="0.011082"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.297874" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.297430" elapsed="0.000508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.303547" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.298139" elapsed="0.006476"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.307040" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.304717" elapsed="0.002372"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.304690" elapsed="0.002423"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.335399" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.335447" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.307256" elapsed="0.028232"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.337305" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.335575" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.335554" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.337419" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:23.337644" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.337688" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.285223" elapsed="0.052488"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.339918" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.338318" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.338300" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.340568" 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-07-28T01:55:23.340134" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.341112" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.340762" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.341187" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.341364" 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-07-28T01:55:23.337977" 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-07-28T01:55:23.341562" 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-07-28T01:55:23.284603" elapsed="0.057435"/>
</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-07-28T01:55:23.239424" elapsed="0.102671"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.232524" elapsed="0.109693"/>
</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-07-28T01:55:23.353223" 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-07-28T01:55:23.353375" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.353083" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.354032" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a52b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.353571" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.354511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.354213" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.354957" 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-07-28T01:55:23.354688" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.355403" 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-07-28T01:55:23.355134" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.356347" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.355596" elapsed="0.000781"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.356887" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.356551" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.357472" 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-07-28T01:55:23.357129" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.358024" 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-07-28T01:55:23.357677" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.358553" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.358221" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.359079" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.358758" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.359788" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a52b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.359276" elapsed="0.000557"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:23.352754" elapsed="0.007137"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.360437" 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-07-28T01:55:23.360048" elapsed="0.000436"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.360883" 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-07-28T01:55:23.360639" 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-07-28T01:55:23.368706" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.368383" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.373615" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.374153" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.374257" 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-07-28T01:55:23.368863" elapsed="0.005420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.374724" 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-07-28T01:55:23.374445" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.377262" 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-07-28T01:55:23.374915" elapsed="0.002437"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.379568" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.377426" elapsed="0.002240"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.377406" elapsed="0.002295"/>
</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-07-28T01:55:23.379904" 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-07-28T01:55:23.380218" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.380031" elapsed="0.000259"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.380008" elapsed="0.000314"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.380366" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:23.382715" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.382778" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.368068" elapsed="0.014743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.385851" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.383602" elapsed="0.002311"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.383577" elapsed="0.002368"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.386745" 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-07-28T01:55:23.386157" elapsed="0.000615"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.387283" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.386935" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.387359" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.387556" 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-07-28T01:55:23.383112" elapsed="0.004470"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.387740" 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-07-28T01:55:23.367514" elapsed="0.020681"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.396045" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.395746" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.404609" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.407175" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.407602" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.396201" elapsed="0.011441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.408476" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.407869" elapsed="0.000676"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.413947" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.408751" elapsed="0.006298"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.417715" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.415154" elapsed="0.002629"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.415127" elapsed="0.002688"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.444752" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.444799" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.418013" elapsed="0.026810"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.446668" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.444903" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.444884" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.446783" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:23.446983" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.447027" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.395353" elapsed="0.051696"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.449214" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.447622" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.447604" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.449849" 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-07-28T01:55:23.449427" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.450388" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.450038" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.450478" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:23.450686" 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-07-28T01:55:23.447271" 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-07-28T01:55:23.450867" 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-07-28T01:55:23.394735" elapsed="0.056582"/>
</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-07-28T01:55:23.349446" elapsed="0.101929"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.342543" elapsed="0.108971"/>
</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-07-28T01:55:23.462421" 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-07-28T01:55:23.462587" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.462281" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.463199" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2e30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.462782" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.463681" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.463378" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.464127" 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-07-28T01:55:23.463858" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.464587" 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-07-28T01:55:23.464302" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.465474" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.464763" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.465995" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.465663" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.466581" 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-07-28T01:55:23.466235" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.467137" 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-07-28T01:55:23.466804" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.467667" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.467333" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.468184" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.467865" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.468721" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2e30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.468381" 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-07-28T01:55:23.461951" elapsed="0.006868"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.469351" 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-07-28T01:55:23.468969" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.469790" 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-07-28T01:55:23.469549" 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-07-28T01:55:23.479486" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.479163" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.484250" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.484982" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.485138" 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-07-28T01:55:23.479645" elapsed="0.005530"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.485782" 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-07-28T01:55:23.485398" elapsed="0.000448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.489348" 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-07-28T01:55:23.486043" elapsed="0.003378"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.491918" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.489542" elapsed="0.002479"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.489515" elapsed="0.002532"/>
</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-07-28T01:55:23.492191" 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-07-28T01:55:23.492417" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.492282" elapsed="0.000204"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.492266" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.492543" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:23.494165" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.494211" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.478844" elapsed="0.015391"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.496403" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.494799" elapsed="0.001649"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.494781" elapsed="0.001705"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.497037" 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-07-28T01:55:23.496636" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.497591" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.497224" elapsed="0.000393"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.497666" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.497845" 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-07-28T01:55:23.494448" elapsed="0.003422"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.498026" 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-07-28T01:55:23.478249" elapsed="0.020238"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.506309" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.506009" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.513999" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.516172" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.516962" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.506480" elapsed="0.010543"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.517996" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.517384" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.525206" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.518420" elapsed="0.007549"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.527854" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.526042" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.526023" elapsed="0.001904"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.553432" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.553495" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.528068" elapsed="0.025452"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.555360" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.553599" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.553580" elapsed="0.001862"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.555488" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:23.555715" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.555763" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.505635" elapsed="0.050151"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.558090" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.556501" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.556481" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.558728" 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-07-28T01:55:23.558306" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.559268" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.558917" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.559361" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.559557" 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-07-28T01:55:23.556002" elapsed="0.003580"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.559741" 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-07-28T01:55:23.505007" elapsed="0.055183"/>
</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-07-28T01:55:23.458639" elapsed="0.101608"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.451709" elapsed="0.108656"/>
</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-07-28T01:55:23.571290" 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-07-28T01:55:23.571478" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.571151" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.572074" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b2e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.571660" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.572545" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.572252" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.572990" 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-07-28T01:55:23.572722" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.573429" 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-07-28T01:55:23.573164" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.574315" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.573621" elapsed="0.000725"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.574848" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.574517" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.575410" 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-07-28T01:55:23.575084" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.575975" 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-07-28T01:55:23.575646" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.576496" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.576167" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.577012" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.576693" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.577542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372b2e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.577206" 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-07-28T01:55:23.570822" elapsed="0.006818"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.578169" 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-07-28T01:55:23.577788" elapsed="0.000411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.578609" 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-07-28T01:55:23.578350" 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-07-28T01:55:23.586595" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.586272" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.591237" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.591775" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.591878" 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-07-28T01:55:23.586752" elapsed="0.005152"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.592315" 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-07-28T01:55:23.592064" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.594865" 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-07-28T01:55:23.592521" elapsed="0.002396"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.596889" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.594987" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.594968" elapsed="0.002095"/>
</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-07-28T01:55:23.597264" 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-07-28T01:55:23.597604" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.597392" elapsed="0.000286"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.597369" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.597756" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:23.600049" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.600112" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.585955" elapsed="0.014189"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.603158" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.600926" elapsed="0.002295"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.600902" elapsed="0.002350"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.604075" 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-07-28T01:55:23.603478" elapsed="0.000634"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.604836" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.604339" elapsed="0.000523"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.604911" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.605091" 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-07-28T01:55:23.600437" 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-07-28T01:55:23.605272" 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-07-28T01:55:23.585381" elapsed="0.020353"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.613621" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.613300" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.621114" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.623655" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.624076" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.613777" elapsed="0.010337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.624717" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.624339" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.630366" 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;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;12&lt;/second&gt;&lt;nanosecond&gt;288000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;787000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;281000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;791000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;286000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;790000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;296000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;794000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;803000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;306000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;809000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;304000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;814000000&lt;/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;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;20&lt;/second&gt;&lt;nanosecond&gt;811000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;310000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;265000000&lt;/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;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;6&lt;/second&gt;&lt;nanosecond&gt;769000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;822000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;317000000&lt;/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;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;22&lt;/second&gt;&lt;nanosecond&gt;816000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;323000000&lt;/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;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;25&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;321000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;820000000&lt;/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;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;266000000&lt;/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;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;5&lt;/second&gt;&lt;nanosecond&gt;768000000&lt;/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;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;265000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;324000000&lt;/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;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;4&lt;/second&gt;&lt;nanosecond&gt;762000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;825000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;786000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;28&lt;/second&gt;&lt;nanosecond&gt;869000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;269000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;27&lt;/second&gt;&lt;nanosecond&gt;830000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;28&lt;/second&gt;&lt;nanosecond&gt;332000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;276000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;781000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;280000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;773000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;263000000&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-07-28T01:55:23.624979" elapsed="0.006476"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.633676" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.631572" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.631544" elapsed="0.002205"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.660968" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.661017" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.633891" elapsed="0.027150"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.662865" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.661122" elapsed="0.001801"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.661103" elapsed="0.001845"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.662981" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.663180" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.663225" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.612925" elapsed="0.050323"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.665441" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.663816" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.663798" elapsed="0.001726"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.666083" 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-07-28T01:55:23.665678" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.666640" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.666270" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.666715" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.666895" 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-07-28T01:55:23.663479" 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-07-28T01:55:23.667077" 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-07-28T01:55:23.612263" elapsed="0.055280"/>
</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-07-28T01:55:23.567559" elapsed="0.100042"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.560663" elapsed="0.107052"/>
</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-07-28T01:55:23.678666" 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-07-28T01:55:23.678804" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.678522" elapsed="0.000310"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.679389" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.678982" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.679862" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.679584" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.680344" 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-07-28T01:55:23.680039" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.680808" 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-07-28T01:55:23.680539" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.681685" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.680983" elapsed="0.000732"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.682203" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.681872" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.682792" 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-07-28T01:55:23.682442" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.683315" 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-07-28T01:55:23.682987" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.683840" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.683523" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.684372" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.684035" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.684904" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.684583" 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-07-28T01:55:23.678177" elapsed="0.006825"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.685546" 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-07-28T01:55:23.685150" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.685963" 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-07-28T01:55:23.685725" 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-07-28T01:55:23.694104" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.693803" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.698569" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.699239" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.699379" 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-07-28T01:55:23.694259" elapsed="0.005156"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.700009" 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-07-28T01:55:23.699659" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.703578" 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-07-28T01:55:23.700267" elapsed="0.003384"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.706313" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.703747" elapsed="0.002703"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.703721" 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-07-28T01:55:23.706712" 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-07-28T01:55:23.707029" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.706839" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.706817" elapsed="0.000316"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.707177" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:23.709243" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.709288" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.693488" elapsed="0.015822"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.711483" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.709878" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.709860" elapsed="0.001692"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.712094" 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-07-28T01:55:23.711698" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.712664" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.712280" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.712739" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.712918" 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-07-28T01:55:23.709540" 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-07-28T01:55:23.713100" 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-07-28T01:55:23.692783" elapsed="0.020787"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.721366" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.721067" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.726928" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.728751" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.729032" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.721536" elapsed="0.007522"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.729488" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.729217" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.733534" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:23.729677" elapsed="0.004901"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.737159" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.734679" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.734652" elapsed="0.002607"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.766063" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.766111" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.737483" elapsed="0.028652"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.767972" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.766215" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.766196" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.768088" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:23.768288" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.768332" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.720697" elapsed="0.047658"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.770548" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.768946" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.768927" elapsed="0.001688"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.771171" 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-07-28T01:55:23.770764" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.771733" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.771360" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.771809" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.771987" 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-07-28T01:55:23.768593" 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-07-28T01:55:23.772171" 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-07-28T01:55:23.720058" elapsed="0.052582"/>
</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-07-28T01:55:23.674909" elapsed="0.097789"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.667976" elapsed="0.104871"/>
</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-07-28T01:55:23.783824" 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-07-28T01:55:23.783968" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.783684" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.784578" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.784148" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.785059" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.784758" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.785524" 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-07-28T01:55:23.785237" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.785971" 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-07-28T01:55:23.785705" elapsed="0.000290"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.786850" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.786145" elapsed="0.000735"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.787364" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.787035" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.787945" 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-07-28T01:55:23.787619" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.788481" 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-07-28T01:55:23.788139" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.789027" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:23.788680" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.789557" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:23.789223" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.790076" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693380&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.789758" 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-07-28T01:55:23.783340" elapsed="0.006833"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.790719" 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-07-28T01:55:23.790322" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.791136" 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-07-28T01:55:23.790899" 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-07-28T01:55:23.799330" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.799015" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.803184" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.803718" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.803834" 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-07-28T01:55:23.799506" elapsed="0.004357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.804296" 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-07-28T01:55:23.804027" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.807548" 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-07-28T01:55:23.804508" elapsed="0.003136"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.810332" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.807747" elapsed="0.002749"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.807720" elapsed="0.002818"/>
</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-07-28T01:55:23.810742" 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-07-28T01:55:23.811084" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.810889" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.810849" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.811237" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:23.813686" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.813732" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.798681" elapsed="0.015075"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.815981" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.814336" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.814306" elapsed="0.001742"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.816651" 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-07-28T01:55:23.816195" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.817226" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.816843" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.817301" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.817498" 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-07-28T01:55:23.813986" 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-07-28T01:55:23.817683" 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-07-28T01:55:23.798081" elapsed="0.020054"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.826126" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.825807" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.834569" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.836441" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.836740" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.826281" elapsed="0.010488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.837374" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.836933" elapsed="0.000490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.843181" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:23.837593" elapsed="0.006689"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.846648" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.844388" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.844361" elapsed="0.002360"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.873144" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.873192" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.846879" elapsed="0.026336"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.875057" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.873295" elapsed="0.001822"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.873276" elapsed="0.001865"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.875175" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:23.875376" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.875420" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.825410" elapsed="0.050033"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.877684" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.876040" elapsed="0.001692"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.876021" elapsed="0.001733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.878309" 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-07-28T01:55:23.877905" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.878879" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.878524" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.878956" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:23.879139" 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-07-28T01:55:23.875702" elapsed="0.003463"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.879322" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:23.824775" elapsed="0.055025"/>
</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-07-28T01:55:23.780049" elapsed="0.099813"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.773119" elapsed="0.106859"/>
</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-07-28T01:55:23.891036" 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-07-28T01:55:23.891176" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:23.890894" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:23.891808" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948310&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.891359" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.892273" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:23.891994" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.892750" 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-07-28T01:55:23.892472" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:23.893202" 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-07-28T01:55:23.892929" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.894183" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:23.893381" elapsed="0.000832"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.894724" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.894369" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.895297" 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-07-28T01:55:23.894969" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.895848" 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-07-28T01:55:23.895509" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.896357" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:23.896042" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.896896" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:23.896570" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.899231" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948310&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:23.897093" elapsed="0.002184"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:23.890561" elapsed="0.008773"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.899897" 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-07-28T01:55:23.899506" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.900328" 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-07-28T01:55:23.900085" 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-07-28T01:55:23.908153" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.907856" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.912068" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.912582" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:23.912694" 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-07-28T01:55:23.908309" elapsed="0.004411"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.913131" 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-07-28T01:55:23.912879" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.915682" 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-07-28T01:55:23.913318" elapsed="0.002417"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:23.917633" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:55:23.915837" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.915817" elapsed="0.001924"/>
</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-07-28T01:55:23.917916" 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-07-28T01:55:23.918149" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.918008" elapsed="0.000209"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:23.917992" elapsed="0.000249"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.918274" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:23.920536" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:23.920606" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:23.907542" elapsed="0.013101"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.923869" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.921476" elapsed="0.002460"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.921422" elapsed="0.002544"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.924797" 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-07-28T01:55:23.924190" elapsed="0.000649"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.925631" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.925087" elapsed="0.000581"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.925738" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:23.926052" 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-07-28T01:55:23.920958" elapsed="0.005130"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.926314" elapsed="0.000524"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:23.906971" elapsed="0.019932"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.935132" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:23.934829" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:23.943574" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:23.946212" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:23.946922" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:23.935288" elapsed="0.011674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.947604" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:23.947188" elapsed="0.000482"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.952698" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:23.947883" elapsed="0.005603"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.955372" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.953560" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.953541" elapsed="0.001930"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:23.981309" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:23.981357" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:23.955619" elapsed="0.025762"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:23.983245" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:23.981478" elapsed="0.001824"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.981444" elapsed="0.001882"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:23.983359" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:23.983611" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:23.983656" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:23.934419" elapsed="0.049260"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:23.985897" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:23.984248" elapsed="0.001694"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:23.984229" elapsed="0.001735"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.986584" 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-07-28T01:55:23.986123" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:23.987147" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:23.986776" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:23.987222" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:23.987404" 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-07-28T01:55:23.983900" elapsed="0.003540"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:23.987618" 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-07-28T01:55:23.933749" elapsed="0.054340"/>
</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-07-28T01:55:23.887224" elapsed="0.100923"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.880244" elapsed="0.108020"/>
</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-07-28T01:55:23.999626" 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-07-28T01:55:23.999763" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:23.999475" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.000391" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:23.999945" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.000887" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.000588" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.001353" 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-07-28T01:55:24.001078" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.001833" 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-07-28T01:55:24.001548" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.002823" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:24.002009" elapsed="0.000846"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.003394" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.003017" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.004020" 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-07-28T01:55:24.003674" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.004580" 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-07-28T01:55:24.004221" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.005111" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.004781" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.005673" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:24.005315" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.006212" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.005874" 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-07-28T01:55:23.999124" elapsed="0.007189"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.006922" 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-07-28T01:55:24.006514" elapsed="0.000439"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.007541" 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-07-28T01:55:24.007104" elapsed="0.000505"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.015567" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.015224" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.020237" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.020773" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.020877" 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-07-28T01:55:24.015741" elapsed="0.005162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.021338" 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-07-28T01:55:24.021067" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.024158" 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-07-28T01:55:24.021554" elapsed="0.002681"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:24.027040" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.024393" elapsed="0.002745"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.024365" elapsed="0.002809"/>
</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-07-28T01:55:24.027391" 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-07-28T01:55:24.027746" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.027550" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.027526" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.027913" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:24.030299" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.030363" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.014901" elapsed="0.015493"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.033061" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.031263" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.031237" elapsed="0.001895"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.033727" 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-07-28T01:55:24.033280" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.034299" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.033930" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.034374" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:24.034589" 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-07-28T01:55:24.030779" elapsed="0.003857"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.034799" 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-07-28T01:55:24.014260" elapsed="0.021003"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.043567" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.043230" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.051306" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.053196" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.053510" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.043736" elapsed="0.009803"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.053978" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.053720" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.059310" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.054186" elapsed="0.006243"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.063185" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.060569" elapsed="0.002687"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.060540" elapsed="0.002748"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.088932" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.088979" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.063523" elapsed="0.025479"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.090875" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.089084" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.089064" elapsed="0.001940"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.091039" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:24.091239" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.091295" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.042845" elapsed="0.048474"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.093605" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.091934" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.091915" elapsed="0.001762"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.094251" 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-07-28T01:55:24.093827" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.094820" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.094443" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.094913" elapsed="0.000063"/>
</return>
<msg time="2026-07-28T01:55:24.095146" 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-07-28T01:55:24.091572" elapsed="0.003600"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.095346" 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-07-28T01:55:24.042165" elapsed="0.053671"/>
</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-07-28T01:55:23.995722" elapsed="0.100170"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:23.988561" elapsed="0.107461"/>
</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-07-28T01:55:24.107386" 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-07-28T01:55:24.107565" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:24.107232" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.108199" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693ec0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.107763" elapsed="0.000463"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.108701" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.108395" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.109156" 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-07-28T01:55:24.108881" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.109623" 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-07-28T01:55:24.109331" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.110573" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:24.109800" elapsed="0.000804"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.111158" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.110778" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.111777" 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-07-28T01:55:24.111415" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.112319" 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-07-28T01:55:24.111973" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.112885" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:24.112555" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.113427" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:24.113094" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.113992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0693ec0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.113659" 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-07-28T01:55:24.106866" elapsed="0.007234"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.114662" 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-07-28T01:55:24.114250" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.115114" 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-07-28T01:55:24.114844" 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-07-28T01:55:24.123361" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.123020" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.127859" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.128616" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.128760" 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-07-28T01:55:24.123552" elapsed="0.005246"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.129413" 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-07-28T01:55:24.129040" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.133155" 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-07-28T01:55:24.129706" elapsed="0.003536"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:24.135975" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.133391" elapsed="0.002655"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.133362" 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-07-28T01:55:24.136231" 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-07-28T01:55:24.136477" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.136323" elapsed="0.000219"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.136306" elapsed="0.000259"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.136598" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:24.138253" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.138300" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.122689" 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-07-28T01:55:24.140659" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.138952" elapsed="0.001757"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.138933" elapsed="0.001797"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.141294" 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-07-28T01:55:24.140878" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.141894" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.141517" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.141971" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:24.142150" 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-07-28T01:55:24.138598" elapsed="0.003577"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.142345" 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-07-28T01:55:24.122096" elapsed="0.020735"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.151051" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.150737" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.158858" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.160773" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.161072" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.151206" elapsed="0.009893"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.161563" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.161287" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.165822" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.161764" elapsed="0.004870"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.168556" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.166711" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.166691" elapsed="0.001948"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.193948" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.193996" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.168786" elapsed="0.025234"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.195945" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.194102" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.194082" elapsed="0.001945"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.196060" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:24.196275" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.196320" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.150320" elapsed="0.046023"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.198620" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.196962" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.196941" elapsed="0.001747"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.199267" 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-07-28T01:55:24.198839" elapsed="0.000455"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.199933" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.199503" elapsed="0.000458"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.200012" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:24.200198" 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-07-28T01:55:24.196607" elapsed="0.003617"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.200395" 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-07-28T01:55:24.149682" elapsed="0.051216"/>
</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-07-28T01:55:24.103450" elapsed="0.097508"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:24.096298" elapsed="0.104783"/>
</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-07-28T01:55:24.212494" 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-07-28T01:55:24.212654" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:24.212334" elapsed="0.000350"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.213274" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.212842" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.213774" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.213485" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.214242" 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-07-28T01:55:24.213952" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.214721" 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-07-28T01:55:24.214421" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.215596" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:24.214897" elapsed="0.000746"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.216175" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.215826" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.216821" 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-07-28T01:55:24.216413" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.217368" 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-07-28T01:55:24.217032" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.217922" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:24.217596" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.218485" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:24.218133" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.219026" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.218685" 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-07-28T01:55:24.211996" elapsed="0.007128"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.219746" 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-07-28T01:55:24.219290" elapsed="0.000490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.220198" 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-07-28T01:55:24.219938" 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-07-28T01:55:24.228504" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.228162" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.233656" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.234196" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.234300" 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-07-28T01:55:24.228677" elapsed="0.005651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.234783" 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-07-28T01:55:24.234521" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.237818" 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-07-28T01:55:24.234987" 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-07-28T01:55:24.240636" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.238009" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.237982" elapsed="0.002786"/>
</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-07-28T01:55:24.241032" 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-07-28T01:55:24.241373" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.241165" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.241139" elapsed="0.000365"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.241553" elapsed="0.000023"/>
</return>
<msg time="2026-07-28T01:55:24.243982" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.244049" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.227836" elapsed="0.016247"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.246475" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.244828" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.244810" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.247123" 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-07-28T01:55:24.246710" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.247704" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.247315" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.247792" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:24.248001" 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-07-28T01:55:24.244398" elapsed="0.003628"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.248185" elapsed="0.000432"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:24.227198" elapsed="0.021486"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.257040" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.256710" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.266143" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.268072" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.268374" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.257207" elapsed="0.011194"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.268861" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.268587" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.273082" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.269060" elapsed="0.004817"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.275792" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.273951" elapsed="0.001901"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.273931" elapsed="0.001945"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.300796" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.300844" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.276019" elapsed="0.024849"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.302675" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.300948" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.300928" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.302787" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:24.302981" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.303024" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.256303" elapsed="0.046744"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.305258" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.303608" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.303590" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.305930" 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-07-28T01:55:24.305505" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.306551" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.306137" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.306637" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:24.306840" 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-07-28T01:55:24.303261" elapsed="0.003605"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.307026" 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-07-28T01:55:24.255583" elapsed="0.051926"/>
</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-07-28T01:55:24.208514" elapsed="0.099053"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:24.201396" elapsed="0.106298"/>
</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-07-28T01:55:24.319239" 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-07-28T01:55:24.319387" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:24.319085" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.320028" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.319596" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.320554" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.320221" elapsed="0.000371"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.321040" 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-07-28T01:55:24.320758" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.321537" 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-07-28T01:55:24.321238" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.322333" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.321734" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.322933" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.322556" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.323549" 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-07-28T01:55:24.323180" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.324127" 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-07-28T01:55:24.323768" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.324735" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:24.324371" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.325293" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.324947" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.325871" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.325519" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:24.318740" elapsed="0.007238"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.326558" 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-07-28T01:55:24.326129" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.327013" 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-07-28T01:55:24.326751" 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-07-28T01:55:24.337073" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.336744" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.341474" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.342028" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.342153" 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-07-28T01:55:24.337230" elapsed="0.004949"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.342639" 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-07-28T01:55:24.342339" elapsed="0.000346"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.345300" 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-07-28T01:55:24.342828" elapsed="0.002536"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:24.347283" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.345436" elapsed="0.001931"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.345416" elapsed="0.001989"/>
</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-07-28T01:55:24.347576" 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-07-28T01:55:24.347804" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.347668" elapsed="0.000232"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.347652" elapsed="0.000273"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.347960" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:55:24.349723" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.349770" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.336375" elapsed="0.013419"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.352049" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.350380" elapsed="0.001723"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.350362" elapsed="0.001764"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.352735" 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-07-28T01:55:24.352273" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.353301" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.352925" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.353388" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:24.353591" 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-07-28T01:55:24.350024" elapsed="0.003592"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.353782" 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-07-28T01:55:24.335773" elapsed="0.018488"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.362606" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.362266" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.370989" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.375558" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.376308" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.362778" elapsed="0.013591"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.377608" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.376923" elapsed="0.000790"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.433661" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.378103" elapsed="0.056510"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.436722" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.434726" elapsed="0.002051"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.434694" elapsed="0.002107"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.461078" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.461125" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.437058" elapsed="0.024125"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.462996" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.461265" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.461246" elapsed="0.001831"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.463110" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:24.463321" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.463365" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.361866" elapsed="0.101521"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.465619" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.464004" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.463985" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.466280" 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-07-28T01:55:24.465840" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.466843" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.466485" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.466919" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:24.467099" 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-07-28T01:55:24.463656" 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-07-28T01:55:24.467283" 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-07-28T01:55:24.361202" elapsed="0.106561"/>
</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-07-28T01:55:24.315244" elapsed="0.152580"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:24.307959" elapsed="0.159988"/>
</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-07-28T01:55:24.478914" 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-07-28T01:55:24.479076" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:24.478771" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.479690" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37289f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.479257" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.480153" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.479870" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.480618" 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-07-28T01:55:24.480330" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.481062" 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-07-28T01:55:24.480793" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.482048" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:24.481237" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.482591" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.482239" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.483169" 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-07-28T01:55:24.482839" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.483838" 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-07-28T01:55:24.483419" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.484399" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:24.484037" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.484983" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:24.484655" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.485646" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37289f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.485226" elapsed="0.000464"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:24.478422" elapsed="0.007326"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.486330" 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-07-28T01:55:24.485901" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.486812" 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-07-28T01:55:24.486564" 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-07-28T01:55:24.495088" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.494738" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.500582" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.501205" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.501316" 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-07-28T01:55:24.495247" elapsed="0.006095"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.501988" 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-07-28T01:55:24.501570" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.505850" 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-07-28T01:55:24.502260" elapsed="0.003665"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:24.508680" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.506024" elapsed="0.002752"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.505997" elapsed="0.002814"/>
</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-07-28T01:55:24.509060" elapsed="0.000080"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.509491" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.509244" elapsed="0.000367"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.509221" elapsed="0.000427"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.509694" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:24.511680" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.511764" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.494403" elapsed="0.017386"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.514115" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.512371" elapsed="0.001789"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.512317" elapsed="0.001865"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.514811" 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-07-28T01:55:24.514329" elapsed="0.000510"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.515404" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.515003" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.515498" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:24.515679" 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-07-28T01:55:24.512006" elapsed="0.003698"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.515903" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:24.493805" elapsed="0.022594"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.524785" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.524432" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.533538" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.537262" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.538086" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.524983" elapsed="0.013165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.539315" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.538609" elapsed="0.000810"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.545374" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.539839" elapsed="0.006355"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.548154" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.546267" elapsed="0.001936"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.546248" elapsed="0.001978"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.576357" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.576404" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.548366" elapsed="0.028062"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.578379" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.576559" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.576539" elapsed="0.001936"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.578544" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:24.578746" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.578790" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.524022" elapsed="0.054791"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.581155" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.579403" elapsed="0.001831"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.579385" elapsed="0.001874"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.581905" 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-07-28T01:55:24.581409" elapsed="0.000525"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.582541" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.582136" elapsed="0.000431"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.582617" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:24.582800" 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-07-28T01:55:24.579071" elapsed="0.003754"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.582980" 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-07-28T01:55:24.523351" elapsed="0.060134"/>
</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-07-28T01:55:24.475138" elapsed="0.108406"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:24.468237" elapsed="0.115427"/>
</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-07-28T01:55:24.595781" 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-07-28T01:55:24.595925" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:24.595640" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.596562" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.596102" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.597067" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.596743" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.597569" 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-07-28T01:55:24.597281" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.598082" 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-07-28T01:55:24.597782" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.598935" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.598294" elapsed="0.000672"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.599509" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.599157" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.600154" 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-07-28T01:55:24.599786" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.600739" 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-07-28T01:55:24.600352" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.601291" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:24.600935" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.601833" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.601508" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.602436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.602109" 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-07-28T01:55:24.595248" elapsed="0.007306"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.603167" 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-07-28T01:55:24.602745" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.603654" 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-07-28T01:55:24.603352" 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-07-28T01:55:24.612171" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.611861" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.617000" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.617560" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:24.617678" 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-07-28T01:55:24.612330" elapsed="0.005375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.618152" 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-07-28T01:55:24.617868" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.620815" 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-07-28T01:55:24.618344" elapsed="0.002526"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:24.622870" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:55:24.620944" elapsed="0.002028"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.620923" elapsed="0.002097"/>
</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-07-28T01:55:24.623226" 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-07-28T01:55:24.623656" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.623427" elapsed="0.000317"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:24.623402" elapsed="0.000377"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.623825" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:24.626202" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:24.626273" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:24.611527" elapsed="0.014781"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.629527" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.627163" elapsed="0.002430"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.627138" elapsed="0.002485"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.630510" 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-07-28T01:55:24.629833" elapsed="0.000717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.631169" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.630800" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.631248" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:24.631440" 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-07-28T01:55:24.626662" elapsed="0.004822"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:24.631647" 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-07-28T01:55:24.610927" elapsed="0.021207"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.640707" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:24.640352" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:24.650053" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:24.654340" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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-... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:24.655261" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:24.640901" elapsed="0.014426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.656544" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.655787" elapsed="0.000863"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.662214" 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;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;15&lt;/second&gt;&lt;nanosecond&gt;322000000&lt;/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;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;15&lt;/second&gt;&lt;nanosecond&gt;821000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;315000000&lt;/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;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;17&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;319000000&lt;/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;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;16&lt;/second&gt;&lt;nanosecond&gt;824000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;329000000&lt;/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;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;19&lt;/second&gt;&lt;nanosecond&gt;827000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;330000000&lt;/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;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;18&lt;/second&gt;&lt;nanosecond&gt;828000000&lt;/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;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;20&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-37&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;21&lt;/second&gt;&lt;nanosecond&gt;340000000&lt;/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;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;20&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-34&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;22&lt;/second&gt;&lt;nanosecond&gt;842000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;338000000&lt;/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;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;21&lt;/second&gt;&lt;nanosecond&gt;843000000&lt;/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;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;22&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-30&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;24&lt;/second&gt;&lt;nanosecond&gt;848000000&lt;/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;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;23&lt;/second&gt;&lt;nanosecond&gt;845000000&lt;/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;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;24&lt;/second&gt;&lt;nanosecond&gt;344000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;298000000&lt;/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;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;9&lt;/second&gt;&lt;nanosecond&gt;802000000&lt;/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;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;26&lt;/second&gt;&lt;nanosecond&gt;353000000&lt;/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;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;26&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-29&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;25&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-28&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;25&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-23&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;28&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-22&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;28&lt;/second&gt;&lt;nanosecond&gt;861000000&lt;/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;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;27&lt;/second&gt;&lt;nanosecond&gt;354000000&lt;/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;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;27&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-63&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;299000000&lt;/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;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;8&lt;/second&gt;&lt;nanosecond&gt;801000000&lt;/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;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;298000000&lt;/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;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;29&lt;/second&gt;&lt;nanosecond&gt;358000000&lt;/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;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;7&lt;/second&gt;&lt;nanosecond&gt;795000000&lt;/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;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;29&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-50&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;14&lt;/second&gt;&lt;nanosecond&gt;819000000&lt;/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;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;30&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-16&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;31&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-59&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;10&lt;/second&gt;&lt;nanosecond&gt;302000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;30&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-17&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;31&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-56&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;11&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;10&lt;/second&gt;&lt;nanosecond&gt;806000000&lt;/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;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;11&lt;/second&gt;&lt;nanosecond&gt;309000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;815000000&lt;/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;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;14&lt;/second&gt;&lt;nanosecond&gt;313000000&lt;/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;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;12&lt;/second&gt;&lt;nanosecond&gt;807000000&lt;/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;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;13&lt;/second&gt;&lt;nanosecond&gt;297000000&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-07-28T01:55:24.657107" elapsed="0.005962"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.665032" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.663144" elapsed="0.001937"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.663125" elapsed="0.001979"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.691478" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:24.691529" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:24.665281" elapsed="0.026272"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:24.693361" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:24.691635" elapsed="0.001782"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.691615" elapsed="0.001826"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:24.693491" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:24.693723" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:24.693779" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:24.639938" elapsed="0.053865"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:24.695972" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:24.694361" elapsed="0.001657"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:24.694343" elapsed="0.001697"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.696617" 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-07-28T01:55:24.696188" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.697163" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:24.696809" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:24.697239" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:24.697419" 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-07-28T01:55:24.694025" 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-07-28T01:55:24.697623" 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-07-28T01:55:24.639229" elapsed="0.058849"/>
</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-07-28T01:55:24.591754" elapsed="0.106383"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:24.583984" elapsed="0.114273"/>
</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-07-28T01:55:24.699361" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:24.699115" 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-07-28T01:55:24.702919" 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-07-28T01:55:24.703069" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.702777" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.703669" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:24.703250" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.704130" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:24.703852" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.704596" 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-07-28T01:55:24.704307" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:24.705043" 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-07-28T01:55:24.704773" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:24.705816" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:24.705218" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.706322" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.706002" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.706922" 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-07-28T01:55:24.706575" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.707433" 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-07-28T01:55:24.707118" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.707956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.707646" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.708476" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:24.708153" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.708984" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:24.708675" 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-07-28T01:55:24.702405" elapsed="0.006676"/>
</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-07-28T01:55:24.710599" 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-07-28T01:55:24.710172" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:24.711068" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:24.710819" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.711565" level="INFO">${xml} = &lt;Element 'input' at 0x7868b03a76f0&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-07-28T01:55:24.711274" elapsed="0.000319"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:24.712007" 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-07-28T01:55:24.711742" elapsed="0.000313"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.712579" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b03a7d30&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-07-28T01:55:24.712203" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:24.713115" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1f1fd80&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-07-28T01:55:24.712765" elapsed="0.000378"/>
</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-07-28T01:55:24.713292" 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-07-28T01:55:24.713752" elapsed="0.000286"/>
</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-07-28T01:55:24.714206" 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-07-28T01:55:24.714628" elapsed="0.000293"/>
</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-07-28T01:55:24.715071" elapsed="0.000242"/>
</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-07-28T01:55:24.715478" 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-07-28T01:55:24.715968" 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-07-28T01:55:24.716483" elapsed="0.000380"/>
</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-07-28T01:55:24.717016" elapsed="0.000343"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:24.717856" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0309ee0&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-07-28T01:55:24.717576" 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-07-28T01:55:24.718037" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:24.719001" 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-07-28T01:55:24.718507" elapsed="0.000568"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:24.719752" 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-07-28T01:55:24.719226" elapsed="0.000557"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:25.259931" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:25.260157" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:25.260509" 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-07-28T01:55:24.719917" elapsed="0.540675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.265172" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:25.261141" elapsed="0.004097"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b03a7060&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-07-28T01:55:24.709776" elapsed="0.555558"/>
</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-07-28T01:55:24.709232" elapsed="0.556316"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:55:24.698985" elapsed="0.566623"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.266384" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:25.266020" elapsed="0.000464"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:25.271365" 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-07-28T01:55:25.271561" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.271210" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.272188" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0302340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:25.271744" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.272710" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:25.272386" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.273208" 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-07-28T01:55:25.272888" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.273782" 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-07-28T01:55:25.273434" elapsed="0.000375"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:25.274694" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:25.273999" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.275253" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:25.274904" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.275810" 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-07-28T01:55:25.275456" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.276342" 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-07-28T01:55:25.276020" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.276908" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.276566" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.277523" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:25.277110" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.278143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0302340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:25.277745" elapsed="0.000443"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:25.270835" elapsed="0.007410"/>
</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-07-28T01:55:25.279811" 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-07-28T01:55:25.279530" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.280282" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.280015" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.280883" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0302c50&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-07-28T01:55:25.280577" elapsed="0.000334"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:25.281351" 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-07-28T01:55:25.281061" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.282046" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b1fdbbf0&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-07-28T01:55:25.281614" elapsed="0.000460"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.282649" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1fdacf0&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-07-28T01:55:25.282229" elapsed="0.000455"/>
</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-07-28T01:55:25.282863" elapsed="0.000435"/>
</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-07-28T01:55:25.283469" elapsed="0.000291"/>
</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-07-28T01:55:25.283927" 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-07-28T01:55:25.284364" elapsed="0.000263"/>
</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-07-28T01:55:25.284795" elapsed="0.000258"/>
</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-07-28T01:55:25.285216" elapsed="0.000268"/>
</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-07-28T01:55:25.285682" elapsed="0.000407"/>
</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-07-28T01:55:25.286246" elapsed="0.000366"/>
</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-07-28T01:55:25.286762" elapsed="0.000364"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:25.287592" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f21b0&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-07-28T01:55:25.287287" elapsed="0.000333"/>
</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-07-28T01:55:25.287814" elapsed="0.000329"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:25.288798" 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-07-28T01:55:25.288308" elapsed="0.000580"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:25.289562" 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-07-28T01:55:25.289042" elapsed="0.000552"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:25.761019" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:25.761354" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:25.761679" 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-07-28T01:55:25.289784" elapsed="0.471967"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.767835" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:25.762331" elapsed="0.005617"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b0302340&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-07-28T01:55:25.279082" elapsed="0.489020"/>
</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-07-28T01:55:25.278401" elapsed="0.489859"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:55:25.265775" elapsed="0.502585"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.769729" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:25.769107" 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-07-28T01:55:25.773551" 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-07-28T01:55:25.773738" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.773345" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.774367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:25.773928" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.774888" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:25.774579" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.775355" 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-07-28T01:55:25.775068" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:25.775844" 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-07-28T01:55:25.775553" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:25.776710" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:25.776022" elapsed="0.000722"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.777511" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:25.776912" elapsed="0.000643"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.778044" 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-07-28T01:55:25.777715" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.778603" 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-07-28T01:55:25.778249" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.779104" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.778799" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.779644" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:25.779314" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.780191" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:25.779857" 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-07-28T01:55:25.772969" elapsed="0.007325"/>
</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-07-28T01:55:25.781804" 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-07-28T01:55:25.781502" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:25.782336" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:25.782073" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.782851" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05f0fe0&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-07-28T01:55:25.782562" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:25.783293" 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-07-28T01:55:25.783024" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.783941" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b05f1580&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-07-28T01:55:25.783557" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:25.784556" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b0322e30&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-07-28T01:55:25.784123" elapsed="0.000460"/>
</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-07-28T01:55:25.784789" elapsed="0.000330"/>
</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-07-28T01:55:25.785274" elapsed="0.000289"/>
</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-07-28T01:55:25.785720" elapsed="0.000251"/>
</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-07-28T01:55:25.786119" elapsed="0.000251"/>
</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-07-28T01:55:25.786548" 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-07-28T01:55:25.786984" elapsed="0.000367"/>
</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-07-28T01:55:25.787523" elapsed="0.000361"/>
</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-07-28T01:55:25.788035" 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-07-28T01:55:25.788584" elapsed="0.000403"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:25.789432" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3729260&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-07-28T01:55:25.789159" 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-07-28T01:55:25.789642" elapsed="0.000256"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:25.790540" 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-07-28T01:55:25.790057" elapsed="0.000607"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:25.791307" 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-07-28T01:55:25.790826" elapsed="0.000512"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:26.261708" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:26.261972" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:26.262296" 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-07-28T01:55:25.791490" elapsed="0.470875"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.266903" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:26.262916" elapsed="0.004100"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f3920&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-07-28T01:55:25.781071" elapsed="0.486087"/>
</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-07-28T01:55:25.780446" elapsed="0.486790"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:55:25.768761" elapsed="0.498573"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.268214" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:26.267761" elapsed="0.000521"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:26.273166" 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-07-28T01:55:26.273337" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.273019" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.274050" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:26.273575" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.274618" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:26.274276" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.275139" 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-07-28T01:55:26.274798" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.275658" 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-07-28T01:55:26.275319" elapsed="0.000372"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:26.276631" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:26.275860" elapsed="0.000805"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.277298" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:26.276926" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.277904" 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-07-28T01:55:26.277549" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.278470" 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-07-28T01:55:26.278102" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.279010" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.278667" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.279616" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:26.279286" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.280207" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:26.279860" 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-07-28T01:55:26.272623" elapsed="0.007683"/>
</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-07-28T01:55:26.281741" 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-07-28T01:55:26.281435" elapsed="0.000368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.282229" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.281946" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.282765" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e7240&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-07-28T01:55:26.282433" elapsed="0.000361"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:26.283274" 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-07-28T01:55:26.282979" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.283907" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e6c00&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-07-28T01:55:26.283521" elapsed="0.000453"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.284722" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a36e4a90&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-07-28T01:55:26.284127" elapsed="0.000624"/>
</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-07-28T01:55:26.284901" elapsed="0.000309"/>
</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-07-28T01:55:26.285362" elapsed="0.000364"/>
</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-07-28T01:55:26.285919" elapsed="0.000282"/>
</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-07-28T01:55:26.286394" elapsed="0.000302"/>
</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-07-28T01:55:26.286847" 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-07-28T01:55:26.287349" elapsed="0.000256"/>
</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-07-28T01:55:26.287789" 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-07-28T01:55:26.288318" elapsed="0.000393"/>
</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-07-28T01:55:26.288859" elapsed="0.000374"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:26.289753" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069ad90&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-07-28T01:55:26.289426" elapsed="0.000356"/>
</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-07-28T01:55:26.289933" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:26.290945" 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-07-28T01:55:26.290370" elapsed="0.000661"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:26.291818" 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-07-28T01:55:26.291231" elapsed="0.000618"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:26.761641" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:26.761881" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:26.762113" 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-07-28T01:55:26.291983" elapsed="0.470170"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.766707" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:26.762576" elapsed="0.004203"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e5440&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-07-28T01:55:26.281003" elapsed="0.485878"/>
</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-07-28T01:55:26.280470" elapsed="0.486544"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:55:26.267527" elapsed="0.499550"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.767953" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:26.767539" elapsed="0.000481"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:26.773337" 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-07-28T01:55:26.773673" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.773132" elapsed="0.000574"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.774303" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:26.773865" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.774844" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:26.774551" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.775294" 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-07-28T01:55:26.775024" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:26.775801" 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-07-28T01:55:26.775486" elapsed="0.000342"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:26.776953" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:26.775980" elapsed="0.001004"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.777560" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:26.777185" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.778155" 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-07-28T01:55:26.777806" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.778722" 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-07-28T01:55:26.778348" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.779263" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.778957" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.779824" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:26.779511" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.780405" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:26.780059" 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-07-28T01:55:26.772578" elapsed="0.007944"/>
</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-07-28T01:55:26.781995" 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-07-28T01:55:26.781703" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:26.782573" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:26.782261" elapsed="0.000378"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.783139" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3840b30&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-07-28T01:55:26.782821" elapsed="0.000346"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:26.783638" 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-07-28T01:55:26.783314" elapsed="0.000372"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.784285" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a38409f0&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-07-28T01:55:26.783868" elapsed="0.000447"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:26.784898" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3843ab0&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-07-28T01:55:26.784482" elapsed="0.000443"/>
</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-07-28T01:55:26.785073" elapsed="0.000307"/>
</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-07-28T01:55:26.785583" elapsed="0.000303"/>
</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-07-28T01:55:26.786074" 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-07-28T01:55:26.786518" elapsed="0.000239"/>
</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-07-28T01:55:26.786943" 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-07-28T01:55:26.787328" elapsed="0.000293"/>
</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-07-28T01:55:26.787774" elapsed="0.000385"/>
</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-07-28T01:55:26.788346" elapsed="0.000363"/>
</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-07-28T01:55:26.788857" elapsed="0.000373"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:26.789709" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3842430&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-07-28T01:55:26.789386" elapsed="0.000387"/>
</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-07-28T01:55:26.789928" elapsed="0.000249"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:26.791006" 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-07-28T01:55:26.790363" elapsed="0.000799"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:26.791863" 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-07-28T01:55:26.791315" elapsed="0.000579"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:27.264039" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:27.264255" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:27.264579" 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-07-28T01:55:26.792028" elapsed="0.472620"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.269595" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:27.265132" elapsed="0.004529"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b0698720&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-07-28T01:55:26.781255" elapsed="0.488497"/>
</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-07-28T01:55:26.780674" elapsed="0.489160"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:55:26.767254" elapsed="0.502634"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.270660" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:27.270257" elapsed="0.000482"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:27.275999" 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-07-28T01:55:27.276225" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.275638" elapsed="0.000629"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.277223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eecf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:27.276562" elapsed="0.000692"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.277766" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:27.277413" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.278257" 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-07-28T01:55:27.277981" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.278805" 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-07-28T01:55:27.278491" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:27.279871" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:27.279047" elapsed="0.000856"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.280447" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:27.280071" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.281061" 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-07-28T01:55:27.280706" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.281633" 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-07-28T01:55:27.281260" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.282204" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.281863" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.282770" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:27.282401" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.283320" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01eecf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:27.282969" 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-07-28T01:55:27.275100" elapsed="0.008370"/>
</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-07-28T01:55:27.284928" 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-07-28T01:55:27.284640" elapsed="0.000383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.285418" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.285171" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.285996" level="INFO">${xml} = &lt;Element 'input' at 0x7868b01ed120&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-07-28T01:55:27.285683" elapsed="0.000340"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:27.286492" 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-07-28T01:55:27.286168" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.287364" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b01ee570&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-07-28T01:55:27.286726" elapsed="0.000671"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.288392" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b01eef70&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-07-28T01:55:27.287632" elapsed="0.000805"/>
</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-07-28T01:55:27.288795" elapsed="0.000367"/>
</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-07-28T01:55:27.289320" elapsed="0.000329"/>
</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-07-28T01:55:27.289844" elapsed="0.000249"/>
</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-07-28T01:55:27.290244" elapsed="0.000301"/>
</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-07-28T01:55:27.290697" elapsed="0.000283"/>
</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-07-28T01:55:27.291130" elapsed="0.000282"/>
</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-07-28T01:55:27.291581" elapsed="0.000416"/>
</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-07-28T01:55:27.292185" elapsed="0.000395"/>
</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-07-28T01:55:27.292731" elapsed="0.000374"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:27.293588" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a1440&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-07-28T01:55:27.293262" elapsed="0.000354"/>
</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-07-28T01:55:27.293771" elapsed="0.000291"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:27.294751" 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-07-28T01:55:27.294248" elapsed="0.000618"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:27.295589" 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-07-28T01:55:27.295018" elapsed="0.000604"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:27.765188" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:27.765699" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:27.766042" 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-07-28T01:55:27.295754" elapsed="0.470425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.772072" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:27.766764" elapsed="0.005411"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b01eecf0&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-07-28T01:55:27.284182" elapsed="0.488209"/>
</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-07-28T01:55:27.283628" elapsed="0.488931"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:55:27.270067" elapsed="0.502582"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.774074" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:27.773329" elapsed="0.000850"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:27.778317" 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-07-28T01:55:27.778532" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.778167" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.779201" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329a80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:27.778720" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.779735" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:27.779388" elapsed="0.000374"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.780192" 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-07-28T01:55:27.779917" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:27.780706" 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-07-28T01:55:27.780411" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:27.781989" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:27.780886" elapsed="0.001136"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.782557" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:27.782202" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.783084" 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-07-28T01:55:27.782763" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.783622" 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-07-28T01:55:27.783279" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.784130" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.783822" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.784665" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:27.784327" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.785182" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0329a80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:27.784872" 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-07-28T01:55:27.777755" elapsed="0.007525"/>
</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-07-28T01:55:27.786657" 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-07-28T01:55:27.786370" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:27.787180" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:27.786926" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.787696" level="INFO">${xml} = &lt;Element 'input' at 0x7868b032a9d0&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-07-28T01:55:27.787390" elapsed="0.000341"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:27.788148" 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-07-28T01:55:27.787882" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.788759" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b0329440&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-07-28T01:55:27.788355" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:27.789342" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b032b380&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-07-28T01:55:27.788951" elapsed="0.000419"/>
</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-07-28T01:55:27.789545" 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-07-28T01:55:27.790018" 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-07-28T01:55:27.790446" elapsed="0.000263"/>
</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-07-28T01:55:27.790857" elapsed="0.000248"/>
</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-07-28T01:55:27.791254" elapsed="0.000258"/>
</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-07-28T01:55:27.791670" 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-07-28T01:55:27.792063" elapsed="0.000369"/>
</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-07-28T01:55:27.792611" elapsed="0.002224"/>
</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-07-28T01:55:27.795000" elapsed="0.000368"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:27.795837" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a07c0&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-07-28T01:55:27.795547" 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-07-28T01:55:27.796028" elapsed="0.000254"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:27.796955" 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-07-28T01:55:27.796431" elapsed="0.000655"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:27.797804" 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-07-28T01:55:27.797238" elapsed="0.000597"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:28.266207" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:28.266553" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:28.267032" 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-07-28T01:55:27.798029" elapsed="0.469074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.273267" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:28.267739" elapsed="0.005577"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b0329a80&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-07-28T01:55:27.785963" elapsed="0.487430"/>
</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-07-28T01:55:27.785431" elapsed="0.488044"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:55:27.772966" elapsed="0.500552"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.274168" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:28.273848" elapsed="0.000368"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:28.278094" 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-07-28T01:55:28.278328" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.277942" elapsed="0.000417"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.279061" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:28.278535" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.279619" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:28.279302" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.280201" 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-07-28T01:55:28.279904" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.280800" 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-07-28T01:55:28.280443" elapsed="0.000384"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:28.281871" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:28.280984" elapsed="0.000920"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.282481" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:28.282114" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.283113" 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-07-28T01:55:28.282724" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.283712" 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-07-28T01:55:28.283320" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.284271" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.283946" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.284866" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:28.284533" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.285445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032a750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:28.285073" elapsed="0.000433"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:28.277518" elapsed="0.008045"/>
</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-07-28T01:55:28.287105" 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-07-28T01:55:28.286795" elapsed="0.000381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.287589" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.287321" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.288227" level="INFO">${xml} = &lt;Element 'input' at 0x7868b01efc40&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-07-28T01:55:28.287815" elapsed="0.000472"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:28.288803" 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-07-28T01:55:28.288443" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.289744" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b01ed940&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-07-28T01:55:28.289046" elapsed="0.000727"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.290481" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b01ec900&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-07-28T01:55:28.289970" elapsed="0.000540"/>
</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-07-28T01:55:28.290666" elapsed="0.000331"/>
</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-07-28T01:55:28.291197" elapsed="0.000293"/>
</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-07-28T01:55:28.291694" elapsed="0.000283"/>
</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-07-28T01:55:28.292180" 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-07-28T01:55:28.292646" 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-07-28T01:55:28.293095" elapsed="0.000245"/>
</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-07-28T01:55:28.293507" elapsed="0.000422"/>
</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-07-28T01:55:28.294119" elapsed="0.000437"/>
</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-07-28T01:55:28.294716" elapsed="0.000399"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:28.295576" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b2259c10&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-07-28T01:55:28.295274" 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-07-28T01:55:28.295809" elapsed="0.000356"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:28.296963" 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-07-28T01:55:28.296360" elapsed="0.000693"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:28.297777" 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-07-28T01:55:28.297206" elapsed="0.000638"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:28.767290" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:28.767561" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:28.767912" 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-07-28T01:55:28.298034" elapsed="0.469945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.772911" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:28.768565" elapsed="0.004474"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b032a750&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-07-28T01:55:28.286321" elapsed="0.486818"/>
</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-07-28T01:55:28.285754" elapsed="0.487469"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:55:28.273702" elapsed="0.499577"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.774202" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:28.773764" 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-07-28T01:55:28.779626" 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-07-28T01:55:28.779858" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.779470" elapsed="0.000419"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.780631" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:28.780056" elapsed="0.000607"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.781170" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:28.780826" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.781727" 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-07-28T01:55:28.781354" elapsed="0.000401"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:28.782553" 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-07-28T01:55:28.782021" elapsed="0.000561"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:28.783699" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:28.782754" elapsed="0.000978"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.784292" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:28.783902" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.784903" 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-07-28T01:55:28.784525" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.785550" 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-07-28T01:55:28.785109" elapsed="0.000488"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.786218" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.785854" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.786834" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:28.786433" elapsed="0.000449"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.787497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:28.787091" elapsed="0.000454"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:28.779038" elapsed="0.008565"/>
</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-07-28T01:55:28.789161" 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-07-28T01:55:28.788900" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:28.789779" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:28.789427" elapsed="0.000420"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.790331" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0698720&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-07-28T01:55:28.789997" elapsed="0.000362"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:28.790932" 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-07-28T01:55:28.790571" elapsed="0.000412"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.791657" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b0699b70&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-07-28T01:55:28.791133" elapsed="0.000553"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:28.792282" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b069b920&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-07-28T01:55:28.791840" elapsed="0.000470"/>
</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-07-28T01:55:28.792528" elapsed="0.000332"/>
</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-07-28T01:55:28.793017" elapsed="0.000316"/>
</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-07-28T01:55:28.793548" elapsed="0.000354"/>
</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-07-28T01:55:28.794068" elapsed="0.000288"/>
</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-07-28T01:55:28.794570" 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-07-28T01:55:28.795018" 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-07-28T01:55:28.795473" elapsed="0.000573"/>
</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-07-28T01:55:28.796201" elapsed="0.000479"/>
</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-07-28T01:55:28.796847" elapsed="0.000392"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:28.797761" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e5bc0&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-07-28T01:55:28.797395" elapsed="0.000395"/>
</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-07-28T01:55:28.797993" elapsed="0.000255"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:28.799031" 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-07-28T01:55:28.798447" elapsed="0.000682"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:28.799947" 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-07-28T01:55:28.799323" elapsed="0.000691"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:29.268281" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:29.268641" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:29.269005" 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-07-28T01:55:28.800188" elapsed="0.468884"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.274026" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:29.269719" elapsed="0.004376"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a38425c0&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-07-28T01:55:28.788358" elapsed="0.485844"/>
</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-07-28T01:55:28.787798" elapsed="0.486541"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:55:28.773532" elapsed="0.500868"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.275285" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:29.274848" elapsed="0.000505"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:29.280792" 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-07-28T01:55:29.280972" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.280604" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.281719" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:29.281203" elapsed="0.000545"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.282247" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:29.281944" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.282828" 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-07-28T01:55:29.282490" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.283345" 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-07-28T01:55:29.283014" elapsed="0.000359"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:29.284574" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:29.283668" elapsed="0.000939"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.285202" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:29.284810" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.285800" 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-07-28T01:55:29.285416" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.286381" 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-07-28T01:55:29.286049" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.287008" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.286639" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.287862" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:29.287223" elapsed="0.000690"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.288472" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:29.288086" elapsed="0.000437"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:29.280179" elapsed="0.008409"/>
</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-07-28T01:55:29.290110" 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-07-28T01:55:29.289810" elapsed="0.000386"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.290681" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.290386" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.291216" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e53a0&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-07-28T01:55:29.290937" elapsed="0.000307"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:29.291822" 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-07-28T01:55:29.291436" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.292577" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e5670&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-07-28T01:55:29.292100" elapsed="0.000506"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.293206" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a36e46d0&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-07-28T01:55:29.292807" 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-07-28T01:55:29.293434" elapsed="0.000343"/>
</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-07-28T01:55:29.293935" elapsed="0.000306"/>
</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-07-28T01:55:29.294445" elapsed="0.000279"/>
</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-07-28T01:55:29.294877" elapsed="0.000289"/>
</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-07-28T01:55:29.295327" elapsed="0.000365"/>
</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-07-28T01:55:29.295896" 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-07-28T01:55:29.296331" elapsed="0.000440"/>
</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-07-28T01:55:29.296969" elapsed="0.000373"/>
</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-07-28T01:55:29.297560" elapsed="0.000396"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:29.298500" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f3830&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-07-28T01:55:29.298152" elapsed="0.000377"/>
</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-07-28T01:55:29.298684" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:29.299883" 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-07-28T01:55:29.299178" elapsed="0.000796"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:29.300784" 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-07-28T01:55:29.300167" elapsed="0.000687"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:29.767866" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:29.768205" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:29.768502" 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-07-28T01:55:29.300993" elapsed="0.467575"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.773826" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:29.769024" elapsed="0.004864"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e5b20&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-07-28T01:55:29.289340" elapsed="0.484640"/>
</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-07-28T01:55:29.288782" elapsed="0.485279"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:55:29.274598" elapsed="0.499518"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.774847" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:29.774488" 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-07-28T01:55:29.779832" 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-07-28T01:55:29.780039" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.779631" elapsed="0.000448"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.780933" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0180&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:29.780291" elapsed="0.000683"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.781661" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:29.781238" elapsed="0.000461"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.782173" 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-07-28T01:55:29.781905" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:29.782630" 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-07-28T01:55:29.782347" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:29.783597" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:29.782804" elapsed="0.000825"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.784121" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:29.783793" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.784641" 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-07-28T01:55:29.784315" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.785164" 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-07-28T01:55:29.784833" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.785675" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.785357" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.786173" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:29.785869" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.786690" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0180&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:29.786367" 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-07-28T01:55:29.779121" elapsed="0.007664"/>
</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-07-28T01:55:29.788087" 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-07-28T01:55:29.787840" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:29.788600" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:29.788335" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.789079" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0302e80&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-07-28T01:55:29.788808" elapsed="0.000298"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:29.789767" 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-07-28T01:55:29.789313" elapsed="0.000502"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.790353" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b05f0e00&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-07-28T01:55:29.789964" elapsed="0.000416"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:29.790923" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b0301e90&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-07-28T01:55:29.790548" elapsed="0.000402"/>
</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-07-28T01:55:29.791098" 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-07-28T01:55:29.791530" 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-07-28T01:55:29.791942" elapsed="0.000237"/>
</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-07-28T01:55:29.792326" 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-07-28T01:55:29.792730" 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-07-28T01:55:29.793114" elapsed="0.000270"/>
</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-07-28T01:55:29.793548" 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-07-28T01:55:29.794062" 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-07-28T01:55:29.794581" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:29.795334" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1f1fc40&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-07-28T01:55:29.795067" 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-07-28T01:55:29.795529" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:29.796435" 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-07-28T01:55:29.795922" elapsed="0.000658"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:29.797315" 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-07-28T01:55:29.796730" elapsed="0.000616"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:30.270531" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:30.270840" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:30.271218" 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-07-28T01:55:29.797499" elapsed="0.473783"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.277955" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:30.271886" elapsed="0.006176"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f0180&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-07-28T01:55:29.787425" elapsed="0.490879"/>
</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-07-28T01:55:29.786935" elapsed="0.491504"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:55:29.774280" elapsed="0.504354"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.279956" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:30.279385" elapsed="0.000617"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:30.283962" 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-07-28T01:55:30.284189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.283810" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.284953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a79c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:30.284415" elapsed="0.000567"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.285500" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:30.285142" elapsed="0.000385"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.286071" 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-07-28T01:55:30.285748" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.286681" 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-07-28T01:55:30.286345" elapsed="0.000364"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:30.287836" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:30.286950" elapsed="0.000918"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.288418" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:30.288078" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.289004" 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-07-28T01:55:30.288687" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.289626" 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-07-28T01:55:30.289247" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.290188" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.289827" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.290799" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:30.290397" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.291366" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a79c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:30.291048" 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-07-28T01:55:30.283376" elapsed="0.008153"/>
</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-07-28T01:55:30.292983" 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-07-28T01:55:30.292712" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.293449" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.293196" elapsed="0.000413"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.294051" level="INFO">${xml} = &lt;Element 'input' at 0x7868a35c2430&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-07-28T01:55:30.293767" elapsed="0.000360"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:30.294613" 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-07-28T01:55:30.294284" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.295527" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a35c0720&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-07-28T01:55:30.294873" elapsed="0.000684"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.296150" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a35c3a60&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-07-28T01:55:30.295713" elapsed="0.000465"/>
</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-07-28T01:55:30.296338" elapsed="0.000351"/>
</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-07-28T01:55:30.296884" elapsed="0.000285"/>
</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-07-28T01:55:30.297369" elapsed="0.000277"/>
</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-07-28T01:55:30.297801" 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-07-28T01:55:30.298247" 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-07-28T01:55:30.298720" elapsed="0.000277"/>
</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-07-28T01:55:30.299168" elapsed="0.000444"/>
</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-07-28T01:55:30.299765" elapsed="0.000406"/>
</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-07-28T01:55:30.300362" elapsed="0.000364"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:30.301255" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6db20&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-07-28T01:55:30.300930" elapsed="0.000356"/>
</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-07-28T01:55:30.301438" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:30.302445" 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-07-28T01:55:30.301900" elapsed="0.000688"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:30.303384" 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-07-28T01:55:30.302739" elapsed="0.000678"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:30.771232" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:30.771522" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:30.771889" 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-07-28T01:55:30.303570" elapsed="0.468385"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.777730" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:30.772686" elapsed="0.005168"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b03a79c0&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-07-28T01:55:30.292236" elapsed="0.485711"/>
</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-07-28T01:55:30.291686" elapsed="0.486345"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:55:30.278983" elapsed="0.499105"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.778973" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:30.778589" elapsed="0.000501"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:30.784813" 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-07-28T01:55:30.785088" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.784586" elapsed="0.000555"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.786143" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:30.785423" elapsed="0.000815"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.787063" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:30.786623" elapsed="0.000530"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.787893" 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-07-28T01:55:30.787391" elapsed="0.000544"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:30.788762" 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-07-28T01:55:30.788208" elapsed="0.000606"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:30.790065" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:30.789061" elapsed="0.001038"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.790684" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:30.790277" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.791254" 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-07-28T01:55:30.790888" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.791850" 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-07-28T01:55:30.791472" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.792507" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.792088" elapsed="0.000475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.793108" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:30.792727" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.793711" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:30.793317" elapsed="0.000438"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:30.783897" elapsed="0.009918"/>
</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-07-28T01:55:30.795382" 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-07-28T01:55:30.795124" elapsed="0.000378"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:30.795953" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:30.795654" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.796563" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f6c6d0&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-07-28T01:55:30.796167" elapsed="0.000424"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:30.797123" 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-07-28T01:55:30.796789" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.797775" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f6ecf0&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-07-28T01:55:30.797323" elapsed="0.000481"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:30.798494" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3949ad0&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-07-28T01:55:30.798008" elapsed="0.000521"/>
</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-07-28T01:55:30.798732" 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-07-28T01:55:30.799212" elapsed="0.000338"/>
</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-07-28T01:55:30.799710" elapsed="0.000298"/>
</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-07-28T01:55:30.800161" elapsed="0.000345"/>
</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-07-28T01:55:30.800658" elapsed="0.000300"/>
</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-07-28T01:55:30.801108" elapsed="0.000293"/>
</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-07-28T01:55:30.801569" elapsed="0.000455"/>
</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-07-28T01:55:30.802177" elapsed="0.000550"/>
</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-07-28T01:55:30.802881" elapsed="0.000393"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:30.803774" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3948720&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-07-28T01:55:30.803431" elapsed="0.000372"/>
</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-07-28T01:55:30.804005" elapsed="0.000338"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:30.805060" 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-07-28T01:55:30.804526" elapsed="0.000655"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:30.805915" 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-07-28T01:55:30.805333" elapsed="0.000615"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:31.271633" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:31.271964" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:31.272232" 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-07-28T01:55:30.806127" elapsed="0.466248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.276854" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:31.272922" elapsed="0.004003"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f6eca0&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-07-28T01:55:30.794648" elapsed="0.482381"/>
</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-07-28T01:55:30.794023" elapsed="0.483087"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:55:30.778314" elapsed="0.498854"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.277968" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:31.277548" elapsed="0.000500"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:31.283811" 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-07-28T01:55:31.283985" 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-07-28T01:55:31.283646" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.284687" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d1ee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:31.284183" elapsed="0.000534"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.285187" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:31.284880" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.285711" 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-07-28T01:55:31.285372" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.286200" 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-07-28T01:55:31.285913" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:31.287136" 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-07-28T01:55:31.286395" elapsed="0.000774"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.287714" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:31.287346" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.288241" 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-07-28T01:55:31.287916" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.288797" 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-07-28T01:55:31.288441" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.289313" 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-07-28T01:55:31.288996" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.289906" 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-07-28T01:55:31.289533" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.290438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d1ee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:31.290111" 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-07-28T01:55:31.283231" elapsed="0.007324"/>
</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-07-28T01:55:31.292129" 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-07-28T01:55:31.291674" elapsed="0.000568"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.292672" 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-07-28T01:55:31.292393" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.293195" level="INFO">${xml} = &lt;Element 'input' at 0x7868a37d0ae0&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-07-28T01:55:31.292893" elapsed="0.000330"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:31.293661" 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-07-28T01:55:31.293371" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.294276" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a37d36f0&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-07-28T01:55:31.293897" elapsed="0.000407"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.294840" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a37d2930&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-07-28T01:55:31.294469" 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-07-28T01:55:31.295016" elapsed="0.000284"/>
</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-07-28T01:55:31.295452" 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-07-28T01:55:31.295887" 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-07-28T01:55:31.296276" 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-07-28T01:55:31.296679" 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-07-28T01:55:31.297079" elapsed="0.000240"/>
</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-07-28T01:55:31.297485" elapsed="0.000407"/>
</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-07-28T01:55:31.298045" elapsed="0.000371"/>
</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-07-28T01:55:31.298584" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:31.299372" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a37d1350&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-07-28T01:55:31.299093" 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-07-28T01:55:31.299572" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:31.300473" 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-07-28T01:55:31.299986" elapsed="0.000606"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:31.301265" 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-07-28T01:55:31.300757" elapsed="0.000548"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:31.772384" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:31.772649" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:31.772935" 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-07-28T01:55:31.301442" elapsed="0.471557"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.781200" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:31.773501" elapsed="0.007806"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a37d1ee0&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-07-28T01:55:31.291239" elapsed="0.490266"/>
</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-07-28T01:55:31.290720" elapsed="0.490924"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:55:31.277333" elapsed="0.504419"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.783024" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:31.782327" elapsed="0.000813"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:31.787217" 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-07-28T01:55:31.787392" 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-07-28T01:55:31.787057" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.788037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948bd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:31.787592" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.788551" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:31.788231" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.789025" 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-07-28T01:55:31.788735" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:31.789571" 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-07-28T01:55:31.789205" elapsed="0.000393"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:31.790480" 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-07-28T01:55:31.789752" elapsed="0.000761"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.791074" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:31.790692" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.791630" 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-07-28T01:55:31.791279" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.792177" 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-07-28T01:55:31.791842" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.792718" 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-07-28T01:55:31.792377" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.793247" 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-07-28T01:55:31.792927" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.793799" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3948bd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:31.793475" 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-07-28T01:55:31.786656" elapsed="0.007244"/>
</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-07-28T01:55:31.795266" 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-07-28T01:55:31.794981" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:31.795744" 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-07-28T01:55:31.795497" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.796251" level="INFO">${xml} = &lt;Element 'input' at 0x7868a394b970&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-07-28T01:55:31.795964" elapsed="0.000314"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:31.796719" 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-07-28T01:55:31.796424" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.797327" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a394b830&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-07-28T01:55:31.796923" elapsed="0.000437"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:31.798102" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a394b290&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-07-28T01:55:31.797536" elapsed="0.000595"/>
</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-07-28T01:55:31.798279" elapsed="0.000297"/>
</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-07-28T01:55:31.798729" elapsed="0.000273"/>
</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-07-28T01:55:31.799187" elapsed="0.000257"/>
</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-07-28T01:55:31.799610" 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-07-28T01:55:31.800014" 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-07-28T01:55:31.800429" 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-07-28T01:55:31.800842" 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-07-28T01:55:31.801365" elapsed="0.000382"/>
</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-07-28T01:55:31.801900" elapsed="0.000362"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:31.802730" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6c810&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-07-28T01:55:31.802432" 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-07-28T01:55:31.802916" elapsed="0.000276"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:31.803830" 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-07-28T01:55:31.803343" elapsed="0.000570"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:31.804598" 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-07-28T01:55:31.804079" elapsed="0.000556"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:32.273542" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:32.273956" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:32.274299" 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-07-28T01:55:31.804782" elapsed="0.469584"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.279033" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:32.274920" elapsed="0.004183"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3948bd0&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-07-28T01:55:31.794571" elapsed="0.484630"/>
</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-07-28T01:55:31.794052" elapsed="0.485232"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:55:31.781999" elapsed="0.497344"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.280151" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:32.279761" elapsed="0.000473"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:32.286194" 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-07-28T01:55:32.286592" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:32.285776" elapsed="0.000889"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.288128" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:32.287048" elapsed="0.001146"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.289025" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:32.288670" elapsed="0.000382"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.289504" 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-07-28T01:55:32.289209" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.289972" 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-07-28T01:55:32.289687" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:32.291036" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:32.290152" elapsed="0.000917"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.291597" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:32.291238" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.292125" 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-07-28T01:55:32.291802" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.292705" 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-07-28T01:55:32.292361" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.293253" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:32.292906" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.293795" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:32.293474" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.294315" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:32.294000" 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-07-28T01:55:32.284878" elapsed="0.009539"/>
</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-07-28T01:55:32.295848" 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-07-28T01:55:32.295591" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.296416" level="INFO">&lt;?xml version="1.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-07-28T01:55:32.296114" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.296930" level="INFO">${xml} = &lt;Element 'input' at 0x7868b063c130&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-07-28T01:55:32.296643" elapsed="0.000317"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:32.297381" 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-07-28T01:55:32.297109" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.298059" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b063d990&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-07-28T01:55:32.297597" elapsed="0.000492"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.298635" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b063cea0&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-07-28T01:55:32.298246" 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-07-28T01:55:32.298832" elapsed="0.000297"/>
</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-07-28T01:55:32.299284" elapsed="0.000294"/>
</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-07-28T01:55:32.299750" elapsed="0.000265"/>
</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-07-28T01:55:32.300209" elapsed="0.000310"/>
</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-07-28T01:55:32.300671" elapsed="0.000244"/>
</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-07-28T01:55:32.301063" 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-07-28T01:55:32.301451" elapsed="0.000355"/>
</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-07-28T01:55:32.301954" 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-07-28T01:55:32.302429" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:32.303311" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a35c1c60&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-07-28T01:55:32.302943" elapsed="0.000400"/>
</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-07-28T01:55:32.303524" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:32.304501" 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-07-28T01:55:32.303937" elapsed="0.000686"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:32.305308" 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-07-28T01:55:32.304779" elapsed="0.000563"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:32.787932" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:32.788142" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:32.788436" 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-07-28T01:55:32.305498" elapsed="0.483039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.792560" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:32.789063" elapsed="0.003563"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f6f920&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-07-28T01:55:32.295163" elapsed="0.497572"/>
</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-07-28T01:55:32.294587" elapsed="0.498245"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:55:32.279553" elapsed="0.513339"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.793751" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:32.793276" 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-07-28T01:55:32.798744" 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-07-28T01:55:32.798924" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:32.798579" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.799621" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:32.799147" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.800132" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:32.799815" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.800635" 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-07-28T01:55:32.800321" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:32.801128" 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-07-28T01:55:32.800827" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:32.801992" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:32.801318" elapsed="0.000772"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.802638" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:32.802266" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.803199" 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-07-28T01:55:32.802856" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.803764" 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-07-28T01:55:32.803403" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.804313" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:32.803975" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.804870" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:32.804554" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.805425" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c0a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:32.805094" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:32.798168" elapsed="0.007416"/>
</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-07-28T01:55:32.807031" 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-07-28T01:55:32.806759" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:32.807540" level="INFO">&lt;?xml version="1.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-07-28T01:55:32.807267" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.808059" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0691b20&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-07-28T01:55:32.807759" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:32.808551" 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-07-28T01:55:32.808245" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.809145" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b06931a0&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-07-28T01:55:32.808760" elapsed="0.000421"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:32.809753" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b03a7ab0&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-07-28T01:55:32.809352" 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-07-28T01:55:32.809937" elapsed="0.000318"/>
</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-07-28T01:55:32.810422" elapsed="0.000502"/>
</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-07-28T01:55:32.811081" elapsed="0.000263"/>
</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-07-28T01:55:32.811525" elapsed="0.000246"/>
</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-07-28T01:55:32.811933" 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-07-28T01:55:32.812376" elapsed="0.000268"/>
</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-07-28T01:55:32.812812" 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-07-28T01:55:32.813318" elapsed="0.000403"/>
</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-07-28T01:55:32.813874" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:32.814704" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0309350&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-07-28T01:55:32.814401" 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-07-28T01:55:32.814887" elapsed="0.000259"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:32.815887" 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-07-28T01:55:32.815432" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:32.816600" 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-07-28T01:55:32.816124" elapsed="0.000507"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:33.288817" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:33.289038" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:33.289330" 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-07-28T01:55:32.816777" elapsed="0.472636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.293883" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:33.289958" elapsed="0.003992"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a35c0a90&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-07-28T01:55:32.806314" elapsed="0.487735"/>
</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-07-28T01:55:32.805762" elapsed="0.488470"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:55:32.793068" elapsed="0.501224"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.295110" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:33.294726" elapsed="0.000455"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:33.300210" 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-07-28T01:55:33.300381" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:33.300053" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.301032" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b067cf90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:33.300589" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.301608" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:33.301235" elapsed="0.000402"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.302086" 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-07-28T01:55:33.301800" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.302568" 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-07-28T01:55:33.302270" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:33.303395" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:33.302770" elapsed="0.000658"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.303963" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:33.303614" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.304504" 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-07-28T01:55:33.304167" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.305041" 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-07-28T01:55:33.304707" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.305821" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:33.305240" elapsed="0.000631"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.306360" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:33.306033" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.307072" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b067cf90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:33.306586" elapsed="0.000537"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:33.299622" elapsed="0.007575"/>
</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-07-28T01:55:33.308657" 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-07-28T01:55:33.308361" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.309198" level="INFO">&lt;?xml version="1.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-07-28T01:55:33.308924" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.309829" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0303dd0&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-07-28T01:55:33.309500" elapsed="0.000358"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:33.310306" 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-07-28T01:55:33.310007" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.310988" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b0302e80&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-07-28T01:55:33.310540" elapsed="0.000478"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.311573" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b0300360&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-07-28T01:55:33.311174" elapsed="0.000440"/>
</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-07-28T01:55:33.311766" elapsed="0.000307"/>
</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-07-28T01:55:33.312228" elapsed="0.000304"/>
</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-07-28T01:55:33.312700" elapsed="0.000281"/>
</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-07-28T01:55:33.313142" elapsed="0.000241"/>
</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-07-28T01:55:33.313585" elapsed="0.000274"/>
</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-07-28T01:55:33.314011" 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-07-28T01:55:33.314435" elapsed="0.001145"/>
</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-07-28T01:55:33.316147" elapsed="0.001173"/>
</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-07-28T01:55:33.317762" elapsed="0.001201"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:33.320574" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1fdbec0&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-07-28T01:55:33.319683" elapsed="0.000968"/>
</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-07-28T01:55:33.321053" elapsed="0.000693"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:33.323329" 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-07-28T01:55:33.322120" elapsed="0.001421"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:33.324340" 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-07-28T01:55:33.323856" elapsed="0.000517"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:33.789945" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:33.790311" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:33.790753" 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-07-28T01:55:33.324558" elapsed="0.466299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.797254" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:33.791450" elapsed="0.005888"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b067cf90&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-07-28T01:55:33.307951" elapsed="0.489487"/>
</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-07-28T01:55:33.307354" elapsed="0.490226"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:55:33.294487" elapsed="0.503156"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.798411" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:33.798032" elapsed="0.000469"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:33.804094" 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-07-28T01:55:33.804322" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:33.803853" elapsed="0.000511"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.805357" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f36a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:33.804789" elapsed="0.000599"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.805889" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:33.805573" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.806481" 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-07-28T01:55:33.806152" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:33.807000" 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-07-28T01:55:33.806680" elapsed="0.000347"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:33.808055" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:33.807197" elapsed="0.000891"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.808634" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:33.808262" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.809206" 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-07-28T01:55:33.808851" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.809794" 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-07-28T01:55:33.809445" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.810328" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:33.810008" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.810991" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:33.810585" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.811566" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f36a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:33.811197" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:33.803209" elapsed="0.008461"/>
</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-07-28T01:55:33.813118" 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-07-28T01:55:33.812847" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:33.813674" level="INFO">&lt;?xml version="1.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-07-28T01:55:33.813388" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.814187" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0323830&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-07-28T01:55:33.813889" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:33.814719" 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-07-28T01:55:33.814365" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.815419" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b0323420&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-07-28T01:55:33.814991" elapsed="0.000461"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:33.816318" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b05f2b60&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-07-28T01:55:33.815640" elapsed="0.000719"/>
</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-07-28T01:55:33.816582" elapsed="0.000296"/>
</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-07-28T01:55:33.817076" elapsed="0.000308"/>
</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-07-28T01:55:33.817562" elapsed="0.000296"/>
</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-07-28T01:55:33.818031" elapsed="0.000275"/>
</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-07-28T01:55:33.818489" elapsed="0.000285"/>
</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-07-28T01:55:33.818948" elapsed="0.000261"/>
</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-07-28T01:55:33.819364" elapsed="0.000443"/>
</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-07-28T01:55:33.819980" 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-07-28T01:55:33.820521" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:33.821376" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e44f0&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-07-28T01:55:33.821052" elapsed="0.000364"/>
</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-07-28T01:55:33.821640" elapsed="0.000286"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:33.822609" 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-07-28T01:55:33.822080" elapsed="0.000655"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:33.823581" 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-07-28T01:55:33.822942" elapsed="0.000674"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:34.291866" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:34.292294" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:34.292741" 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-07-28T01:55:33.823793" elapsed="0.469084"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.297779" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:34.293640" elapsed="0.004210"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f36a0&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-07-28T01:55:33.812408" elapsed="0.485537"/>
</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-07-28T01:55:33.811874" elapsed="0.486155"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:55:33.797824" elapsed="0.500263"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.298865" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:34.298483" elapsed="0.000467"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:34.304194" 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-07-28T01:55:34.304439" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:34.303991" elapsed="0.000513"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.305605" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:34.304858" elapsed="0.000787"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.306180" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:34.305861" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.306680" 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-07-28T01:55:34.306377" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.307245" 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-07-28T01:55:34.306945" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:34.308431" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:34.307427" elapsed="0.001053"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.309047" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:34.308650" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.309668" 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-07-28T01:55:34.309270" elapsed="0.000468"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.310241" 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-07-28T01:55:34.309904" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.310873" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:34.310522" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.311398" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:34.311080" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.311965" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:34.311634" 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-07-28T01:55:34.303471" elapsed="0.008593"/>
</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-07-28T01:55:34.313633" 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-07-28T01:55:34.313331" elapsed="0.000366"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.314124" level="INFO">&lt;?xml version="1.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-07-28T01:55:34.313858" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.314699" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e55d0&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-07-28T01:55:34.314340" elapsed="0.000387"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:34.315167" 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-07-28T01:55:34.314879" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.315874" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e4810&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-07-28T01:55:34.315447" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.316443" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b069bd30&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-07-28T01:55:34.316055" elapsed="0.000432"/>
</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-07-28T01:55:34.316651" elapsed="0.000306"/>
</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-07-28T01:55:34.317140" 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-07-28T01:55:34.317575" elapsed="0.000281"/>
</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-07-28T01:55:34.318025" elapsed="0.000320"/>
</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-07-28T01:55:34.318555" elapsed="0.000287"/>
</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-07-28T01:55:34.318995" elapsed="0.000309"/>
</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-07-28T01:55:34.319482" elapsed="0.000438"/>
</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-07-28T01:55:34.320074" elapsed="0.000530"/>
</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-07-28T01:55:34.320756" elapsed="0.000402"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:34.321633" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a38429d0&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-07-28T01:55:34.321330" 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-07-28T01:55:34.321831" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:34.322775" 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-07-28T01:55:34.322261" elapsed="0.000596"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:34.323549" 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-07-28T01:55:34.323014" elapsed="0.000568"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:34.793051" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:34.793419" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:34.793901" 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-07-28T01:55:34.323729" elapsed="0.470284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.797682" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:34.794555" elapsed="0.003231"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e7150&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-07-28T01:55:34.312773" elapsed="0.485107"/>
</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-07-28T01:55:34.312219" elapsed="0.485747"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:55:34.298255" elapsed="0.499769"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.798817" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:34.798403" elapsed="0.000478"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:34.805173" 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-07-28T01:55:34.805592" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:34.804771" elapsed="0.000900"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.807107" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:34.806167" elapsed="0.000993"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.807744" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:34.807366" elapsed="0.000406"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.808268" 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-07-28T01:55:34.807954" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:34.808818" 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-07-28T01:55:34.808491" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:34.809929" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:34.809015" elapsed="0.000947"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.810557" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:34.810163" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.811144" 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-07-28T01:55:34.810781" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.811848" 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-07-28T01:55:34.811393" elapsed="0.000503"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.812418" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:34.812068" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.813025" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:34.812669" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.813635" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38425c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:34.813246" elapsed="0.000437"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:34.803754" elapsed="0.010001"/>
</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-07-28T01:55:34.815506" 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-07-28T01:55:34.815003" elapsed="0.000613"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:34.816039" level="INFO">&lt;?xml version="1.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-07-28T01:55:34.815767" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.816615" level="INFO">${xml} = &lt;Element 'input' at 0x7868a38407c0&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-07-28T01:55:34.816274" elapsed="0.000371"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:34.817128" 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-07-28T01:55:34.816812" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.817826" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3841990&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-07-28T01:55:34.817351" elapsed="0.000515"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:34.818446" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a38423e0&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-07-28T01:55:34.818044" elapsed="0.000457"/>
</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-07-28T01:55:34.818659" elapsed="0.000288"/>
</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-07-28T01:55:34.819104" elapsed="0.000339"/>
</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-07-28T01:55:34.819662" 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-07-28T01:55:34.820101" elapsed="0.000267"/>
</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-07-28T01:55:34.820573" elapsed="0.000273"/>
</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-07-28T01:55:34.821015" elapsed="0.000264"/>
</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-07-28T01:55:34.821447" elapsed="0.000499"/>
</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-07-28T01:55:34.822110" elapsed="0.000424"/>
</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-07-28T01:55:34.822691" elapsed="0.000369"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:34.823560" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b01ee110&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-07-28T01:55:34.823241" elapsed="0.000350"/>
</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-07-28T01:55:34.823746" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:34.824792" 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-07-28T01:55:34.824201" elapsed="0.000752"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:34.825938" 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-07-28T01:55:34.825298" elapsed="0.000673"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:35.294364" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:35.294714" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:35.295035" 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-07-28T01:55:34.826109" elapsed="0.468997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.301263" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:35.295663" elapsed="0.005713"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a38425c0&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-07-28T01:55:34.814566" elapsed="0.486995"/>
</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-07-28T01:55:34.813963" elapsed="0.487746"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:55:34.798193" elapsed="0.503617"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.303398" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:35.302487" elapsed="0.001070"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:35.307613" 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-07-28T01:55:35.307793" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:35.307409" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.308580" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed990&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:35.308038" elapsed="0.000576"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.309105" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:35.308779" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.309719" 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-07-28T01:55:35.309322" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.310238" 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-07-28T01:55:35.309924" elapsed="0.000346"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:35.311202" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:35.310450" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.311830" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:35.311429" elapsed="0.000449"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.312407" 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-07-28T01:55:35.312043" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.313011" 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-07-28T01:55:35.312656" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.313597" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:35.313227" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.314190" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:35.313832" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.314815" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed990&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:35.314418" 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-07-28T01:55:35.307015" elapsed="0.007915"/>
</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-07-28T01:55:35.316413" 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-07-28T01:55:35.316138" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.316937" level="INFO">&lt;?xml version="1.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-07-28T01:55:35.316670" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.317433" level="INFO">${xml} = &lt;Element 'input' at 0x7868b032bf60&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-07-28T01:55:35.317142" elapsed="0.000336"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:35.317927" 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-07-28T01:55:35.317630" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.318553" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b03284f0&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-07-28T01:55:35.318148" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.319206" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b032a750&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-07-28T01:55:35.318803" elapsed="0.000432"/>
</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-07-28T01:55:35.319386" elapsed="0.000336"/>
</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-07-28T01:55:35.319938" elapsed="0.002019"/>
</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-07-28T01:55:35.322146" elapsed="0.000328"/>
</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-07-28T01:55:35.322643" elapsed="0.000305"/>
</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-07-28T01:55:35.323128" elapsed="0.000273"/>
</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-07-28T01:55:35.323582" elapsed="0.000299"/>
</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-07-28T01:55:35.324050" 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-07-28T01:55:35.324611" elapsed="0.000368"/>
</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-07-28T01:55:35.325160" elapsed="0.000402"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:35.326058" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3842fc0&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-07-28T01:55:35.325736" elapsed="0.000351"/>
</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-07-28T01:55:35.326258" elapsed="0.000318"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:35.327270" 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-07-28T01:55:35.326803" elapsed="0.000542"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:35.327982" 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-07-28T01:55:35.327521" elapsed="0.000493"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:35.795678" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:35.795893" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:35.796198" 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-07-28T01:55:35.328173" elapsed="0.468182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.801694" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:35.796860" elapsed="0.004935"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b01ed990&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-07-28T01:55:35.315690" elapsed="0.486246"/>
</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-07-28T01:55:35.315112" elapsed="0.486952"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:55:35.302096" elapsed="0.500053"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.803307" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:35.802741" 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-07-28T01:55:35.807210" 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-07-28T01:55:35.807385" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:35.807060" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.808084" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840a90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:35.807609" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.808577" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:35.808270" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.809034" 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-07-28T01:55:35.808760" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:35.809499" 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-07-28T01:55:35.809214" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:35.810506" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:35.809681" elapsed="0.000857"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.811042" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:35.810708" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.811563" 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-07-28T01:55:35.811239" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.812194" 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-07-28T01:55:35.811844" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.812747" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:35.812417" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.813508" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:35.812948" elapsed="0.000609"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.814028" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840a90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:35.813713" 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-07-28T01:55:35.806685" elapsed="0.007444"/>
</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-07-28T01:55:35.815500" 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-07-28T01:55:35.815230" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:35.816062" level="INFO">&lt;?xml version="1.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-07-28T01:55:35.815810" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.816582" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3843ce0&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-07-28T01:55:35.816274" elapsed="0.000336"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:35.817041" 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-07-28T01:55:35.816760" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.817648" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3842750&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-07-28T01:55:35.817237" elapsed="0.000439"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:35.818209" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3841d00&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-07-28T01:55:35.817827" elapsed="0.000410"/>
</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-07-28T01:55:35.818387" elapsed="0.000293"/>
</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-07-28T01:55:35.818830" 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-07-28T01:55:35.819242" 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-07-28T01:55:35.819701" elapsed="0.000251"/>
</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-07-28T01:55:35.820103" 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-07-28T01:55:35.820507" elapsed="0.000240"/>
</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-07-28T01:55:35.820896" 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-07-28T01:55:35.821416" 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-07-28T01:55:35.821947" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:35.822731" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e54e0&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-07-28T01:55:35.822441" 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-07-28T01:55:35.822915" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:35.823989" 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-07-28T01:55:35.823310" elapsed="0.000813"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:35.824833" 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-07-28T01:55:35.824279" elapsed="0.000586"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:36.296291" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:36.296616" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:36.296879" 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-07-28T01:55:35.825004" elapsed="0.471935"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.302211" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:36.297396" elapsed="0.004914"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3840a90&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-07-28T01:55:35.814821" elapsed="0.487697"/>
</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-07-28T01:55:35.814286" elapsed="0.488372"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:55:35.802401" elapsed="0.500347"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.303918" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:36.303300" 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-07-28T01:55:36.309720" 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-07-28T01:55:36.309962" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.309500" elapsed="0.000504"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.310907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:36.310258" elapsed="0.000693"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.311639" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:36.311177" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.312399" 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-07-28T01:55:36.311989" elapsed="0.000518"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.313084" 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-07-28T01:55:36.312762" elapsed="0.000350"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:36.314026" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:36.313275" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.314585" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:36.314225" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.315100" 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-07-28T01:55:36.314783" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.315632" 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-07-28T01:55:36.315301" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.316130" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.315827" elapsed="0.000348"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.316680" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:36.316329" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.317192" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:36.316881" 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-07-28T01:55:36.308898" elapsed="0.008398"/>
</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-07-28T01:55:36.318727" 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-07-28T01:55:36.318468" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.319177" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.318931" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.319693" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e5e90&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-07-28T01:55:36.319383" elapsed="0.000338"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:36.320147" 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-07-28T01:55:36.319868" elapsed="0.000326"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.320777" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e5210&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-07-28T01:55:36.320341" elapsed="0.000464"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.321611" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a36e7a60&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-07-28T01:55:36.320956" elapsed="0.000683"/>
</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-07-28T01:55:36.321792" elapsed="0.000273"/>
</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-07-28T01:55:36.322217" elapsed="0.000278"/>
</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-07-28T01:55:36.322652" 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-07-28T01:55:36.323045" 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-07-28T01:55:36.323472" elapsed="0.000247"/>
</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-07-28T01:55:36.323871" 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-07-28T01:55:36.324258" 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-07-28T01:55:36.324799" elapsed="0.000338"/>
</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-07-28T01:55:36.325285" elapsed="0.000356"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:36.326069" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0323dd0&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-07-28T01:55:36.325798" 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-07-28T01:55:36.326246" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:36.327150" 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-07-28T01:55:36.326663" elapsed="0.000565"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:36.327881" 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-07-28T01:55:36.327377" elapsed="0.000536"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:36.796965" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:36.797322" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:36.797616" 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-07-28T01:55:36.328052" elapsed="0.469626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.802903" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:36.798131" elapsed="0.004873"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e4ae0&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-07-28T01:55:36.318032" elapsed="0.485114"/>
</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-07-28T01:55:36.317468" elapsed="0.485804"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:55:36.302996" elapsed="0.500364"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.804562" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:36.803964" elapsed="0.000699"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:36.808933" 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-07-28T01:55:36.809113" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.808780" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.809775" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f22f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:36.809319" elapsed="0.000485"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.810246" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:36.809961" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.810717" 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-07-28T01:55:36.810426" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:36.811164" 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-07-28T01:55:36.810894" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:36.812214" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:36.811341" elapsed="0.000904"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.812806" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:36.812424" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.813373" 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-07-28T01:55:36.813012" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.813924" 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-07-28T01:55:36.813598" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.814421" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.814119" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.814969" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:36.814656" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.815509" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f22f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:36.815169" elapsed="0.000386"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:36.808377" elapsed="0.007239"/>
</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-07-28T01:55:36.817009" 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-07-28T01:55:36.816754" elapsed="0.000384"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:36.817578" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:36.817301" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.818127" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05f1620&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-07-28T01:55:36.817790" elapsed="0.000366"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:36.818652" 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-07-28T01:55:36.818323" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.819237" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b1fdb830&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-07-28T01:55:36.818855" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:36.819807" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1fdbab0&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-07-28T01:55:36.819418" 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-07-28T01:55:36.819986" 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-07-28T01:55:36.820410" elapsed="0.000304"/>
</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-07-28T01:55:36.820871" 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-07-28T01:55:36.821313" elapsed="0.000262"/>
</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-07-28T01:55:36.821737" 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-07-28T01:55:36.822138" 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-07-28T01:55:36.822544" 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-07-28T01:55:36.823072" elapsed="0.000332"/>
</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-07-28T01:55:36.823570" elapsed="0.000362"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:36.824360" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0303380&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-07-28T01:55:36.824088" 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-07-28T01:55:36.824573" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:36.825634" 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-07-28T01:55:36.824992" elapsed="0.000817"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:36.826514" 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-07-28T01:55:36.826005" elapsed="0.000542"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:37.298096" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:37.298301" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:37.298681" 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-07-28T01:55:36.826687" elapsed="0.472063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.304159" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:37.299307" elapsed="0.004917"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f22f0&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-07-28T01:55:36.816295" elapsed="0.488085"/>
</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-07-28T01:55:36.815771" elapsed="0.488721"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:55:36.803646" elapsed="0.500905"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.305398" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:37.304973" elapsed="0.000568"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:37.311164" 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-07-28T01:55:37.311336" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:37.310971" elapsed="0.000429"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.312102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37325c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:37.311574" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.312681" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:37.312300" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.313227" 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-07-28T01:55:37.312876" elapsed="0.000378"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.313788" 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-07-28T01:55:37.313445" elapsed="0.000369"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:37.314809" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.313968" elapsed="0.000943"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.315550" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:37.315118" elapsed="0.000479"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.316160" 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-07-28T01:55:37.315792" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.316785" 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-07-28T01:55:37.316396" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.317347" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:37.316999" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.317980" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.317614" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.318635" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37325c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:37.318211" elapsed="0.000472"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:37.310433" elapsed="0.008307"/>
</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-07-28T01:55:37.320224" 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-07-28T01:55:37.319933" elapsed="0.000352"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.320735" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.320427" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.321266" level="INFO">${xml} = &lt;Element 'input' at 0x7868b0309b70&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-07-28T01:55:37.320950" elapsed="0.000343"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:37.321737" 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-07-28T01:55:37.321450" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.322614" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b1f1e0c0&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-07-28T01:55:37.321977" elapsed="0.000666"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.323223" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1f1f9c0&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-07-28T01:55:37.322806" elapsed="0.000446"/>
</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-07-28T01:55:37.323400" elapsed="0.000337"/>
</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-07-28T01:55:37.323888" elapsed="0.000311"/>
</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-07-28T01:55:37.324364" elapsed="0.000302"/>
</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-07-28T01:55:37.324873" elapsed="0.000285"/>
</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-07-28T01:55:37.325320" elapsed="0.000296"/>
</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-07-28T01:55:37.325768" elapsed="0.000251"/>
</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-07-28T01:55:37.326272" elapsed="0.000418"/>
</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-07-28T01:55:37.326854" 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-07-28T01:55:37.327387" elapsed="0.000380"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:37.328226" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a6cf0&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-07-28T01:55:37.327931" 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-07-28T01:55:37.328415" elapsed="0.000280"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:37.329337" 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-07-28T01:55:37.328850" elapsed="0.000564"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:37.330142" 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-07-28T01:55:37.329581" elapsed="0.000599"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:37.799212" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:37.799602" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:37.799986" 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-07-28T01:55:37.330346" elapsed="0.469711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.805591" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:37.800774" elapsed="0.004890"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b37325c0&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-07-28T01:55:37.319480" elapsed="0.486284"/>
</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-07-28T01:55:37.318896" elapsed="0.486950"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:55:37.304777" elapsed="0.501126"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.806830" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:37.806381" elapsed="0.000520"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:37.813097" 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-07-28T01:55:37.813566" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.812740" elapsed="0.000971"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.815528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:37.814094" elapsed="0.001509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.816316" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:37.816012" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.816872" 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-07-28T01:55:37.816532" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:37.817395" 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-07-28T01:55:37.817105" elapsed="0.000373"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:37.818703" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:37.817646" elapsed="0.001145"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.819360" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:37.818965" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.819970" 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-07-28T01:55:37.819592" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.820567" 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-07-28T01:55:37.820212" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.821171" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.820815" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.821768" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:37.821380" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.822348" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a35c2480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:37.821981" elapsed="0.000412"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:37.811777" elapsed="0.010671"/>
</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-07-28T01:55:37.824072" 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-07-28T01:55:37.823763" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:37.824671" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:37.824327" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.825231" level="INFO">${xml} = &lt;Element 'input' at 0x7868a35c39c0&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-07-28T01:55:37.824895" elapsed="0.000365"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:37.825758" 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-07-28T01:55:37.825409" elapsed="0.000399"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.826401" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a35c3740&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-07-28T01:55:37.825999" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:37.827109" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b063dcb0&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-07-28T01:55:37.826645" elapsed="0.000493"/>
</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-07-28T01:55:37.827291" elapsed="0.000344"/>
</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-07-28T01:55:37.827804" elapsed="0.000318"/>
</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-07-28T01:55:37.828281" elapsed="0.000305"/>
</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-07-28T01:55:37.828738" 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-07-28T01:55:37.829183" 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-07-28T01:55:37.829607" elapsed="0.000301"/>
</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-07-28T01:55:37.830059" elapsed="0.000419"/>
</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-07-28T01:55:37.830632" elapsed="0.000449"/>
</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-07-28T01:55:37.831234" elapsed="0.000530"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:37.832299" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f2a70&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-07-28T01:55:37.831965" elapsed="0.000369"/>
</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-07-28T01:55:37.832544" elapsed="0.000269"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:37.833521" 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-07-28T01:55:37.832970" elapsed="0.000703"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:37.834392" 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-07-28T01:55:37.833839" elapsed="0.000585"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:38.300032" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:38.300267" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:38.300575" 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-07-28T01:55:37.834625" elapsed="0.466017"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.305301" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:38.301161" elapsed="0.004207"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a35c2480&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-07-28T01:55:37.823297" elapsed="0.482192"/>
</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-07-28T01:55:37.822667" elapsed="0.482919"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:55:37.806139" elapsed="0.499513"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.306380" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:38.306014" 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-07-28T01:55:38.311590" 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-07-28T01:55:38.311832" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:38.311315" elapsed="0.000561"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.312518" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:38.312057" elapsed="0.000500"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.313071" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:38.312722" elapsed="0.000377"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.313570" 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-07-28T01:55:38.313257" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.314050" 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-07-28T01:55:38.313759" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:38.314986" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:38.314290" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.315574" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:38.315189" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.316114" 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-07-28T01:55:38.315793" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.316680" 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-07-28T01:55:38.316328" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.317206" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:38.316887" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.317748" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:38.317406" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.318278" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:38.317964" 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-07-28T01:55:38.310792" elapsed="0.007583"/>
</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-07-28T01:55:38.319802" 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-07-28T01:55:38.319526" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.320257" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:38.320006" elapsed="0.000311"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.320783" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3948720&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-07-28T01:55:38.320489" elapsed="0.000321"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:38.321444" 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-07-28T01:55:38.320959" elapsed="0.000557"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.322053" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3949e90&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-07-28T01:55:38.321677" elapsed="0.000404"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.322619" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a394bab0&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-07-28T01:55:38.322231" 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-07-28T01:55:38.322796" 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-07-28T01:55:38.323230" elapsed="0.000304"/>
</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-07-28T01:55:38.323744" 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-07-28T01:55:38.324149" 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-07-28T01:55:38.324566" 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-07-28T01:55:38.324956" elapsed="0.000251"/>
</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-07-28T01:55:38.325357" elapsed="0.000361"/>
</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-07-28T01:55:38.325867" elapsed="0.000338"/>
</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-07-28T01:55:38.326354" elapsed="0.000366"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:38.327149" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6ef70&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-07-28T01:55:38.326878" 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-07-28T01:55:38.327325" elapsed="0.000334"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:38.328261" 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-07-28T01:55:38.327810" elapsed="0.000536"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:38.328997" 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-07-28T01:55:38.328514" elapsed="0.000523"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:38.801011" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:38.801402" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:38.801793" 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-07-28T01:55:38.329175" elapsed="0.472702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.807113" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:38.802430" elapsed="0.004761"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f6d620&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-07-28T01:55:38.319065" elapsed="0.488231"/>
</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-07-28T01:55:38.318548" elapsed="0.488885"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:55:38.305824" elapsed="0.501692"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.808375" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:38.807896" elapsed="0.000556"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:38.815650" 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-07-28T01:55:38.816104" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:38.815157" elapsed="0.001197"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.817508" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:38.816887" elapsed="0.000662"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.818090" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:38.817766" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.818714" 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-07-28T01:55:38.818342" elapsed="0.000401"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:38.819240" 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-07-28T01:55:38.818944" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:38.820573" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:38.819476" elapsed="0.001129"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.821193" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:38.820785" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.821807" 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-07-28T01:55:38.821435" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.822475" 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-07-28T01:55:38.822079" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.823079" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:38.822690" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.823681" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:38.823295" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.824301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01ed030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:38.823889" elapsed="0.000458"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:38.813982" elapsed="0.010435"/>
</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-07-28T01:55:38.825912" 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-07-28T01:55:38.825637" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:38.826607" level="INFO">&lt;?xml version="1.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-07-28T01:55:38.826269" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.827151" level="INFO">${xml} = &lt;Element 'input' at 0x7868b01ef0b0&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-07-28T01:55:38.826832" elapsed="0.000347"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:38.827698" 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-07-28T01:55:38.827396" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.828431" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b01ed170&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-07-28T01:55:38.827963" elapsed="0.000512"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:38.829119" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b01ef1f0&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-07-28T01:55:38.828678" elapsed="0.000470"/>
</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-07-28T01:55:38.829301" elapsed="0.000349"/>
</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-07-28T01:55:38.829808" elapsed="0.000362"/>
</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-07-28T01:55:38.830380" elapsed="0.000416"/>
</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-07-28T01:55:38.830986" elapsed="0.000323"/>
</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-07-28T01:55:38.831483" elapsed="0.000334"/>
</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-07-28T01:55:38.832045" elapsed="0.000503"/>
</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-07-28T01:55:38.832793" elapsed="0.000492"/>
</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-07-28T01:55:38.833467" elapsed="0.000700"/>
</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-07-28T01:55:38.834370" elapsed="0.000579"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:38.835547" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b035b060&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-07-28T01:55:38.835149" elapsed="0.000430"/>
</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-07-28T01:55:38.835758" elapsed="0.000311"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:38.836855" 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-07-28T01:55:38.836249" elapsed="0.000747"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:38.837799" 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-07-28T01:55:38.837193" elapsed="0.000640"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:39.304693" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:39.305077" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:39.305372" 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-07-28T01:55:38.837973" elapsed="0.467465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.312102" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:39.306061" elapsed="0.006157"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b01ed030&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-07-28T01:55:38.825159" elapsed="0.487330"/>
</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-07-28T01:55:38.824590" elapsed="0.488045"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:55:38.807690" elapsed="0.505041"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.314372" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:39.313612" elapsed="0.000912"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:39.320594" 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-07-28T01:55:39.320774" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:39.320424" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.321519" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035a7a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:39.320980" elapsed="0.000572"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.322062" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:39.321753" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.322699" 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-07-28T01:55:39.322288" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.323223" 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-07-28T01:55:39.322886" elapsed="0.000365"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:39.324313" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:39.323410" elapsed="0.000935"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.324968" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:39.324542" elapsed="0.000473"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.325605" 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-07-28T01:55:39.325218" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.326210" 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-07-28T01:55:39.325823" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.326799" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:39.326468" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.327422" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:39.327051" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.328012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035a7a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:39.327655" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:39.320008" elapsed="0.008117"/>
</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-07-28T01:55:39.331538" 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-07-28T01:55:39.331214" elapsed="0.000391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.332055" level="INFO">&lt;?xml version="1.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-07-28T01:55:39.331792" elapsed="0.000395"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.332760" level="INFO">${xml} = &lt;Element 'input' at 0x7868b035b010&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-07-28T01:55:39.332399" elapsed="0.000389"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:39.333369" 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-07-28T01:55:39.333026" elapsed="0.000392"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.334052" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b035a570&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-07-28T01:55:39.333593" elapsed="0.000487"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.334734" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b0359b70&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-07-28T01:55:39.334286" elapsed="0.000477"/>
</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-07-28T01:55:39.334913" elapsed="0.000329"/>
</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-07-28T01:55:39.335410" elapsed="0.000327"/>
</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-07-28T01:55:39.335907" elapsed="0.000318"/>
</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-07-28T01:55:39.336426" elapsed="0.000312"/>
</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-07-28T01:55:39.336912" elapsed="0.000300"/>
</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-07-28T01:55:39.337366" elapsed="0.000304"/>
</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-07-28T01:55:39.337895" elapsed="0.000440"/>
</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-07-28T01:55:39.338573" elapsed="0.000447"/>
</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-07-28T01:55:39.339174" elapsed="0.000420"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:39.340082" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b01ed710&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-07-28T01:55:39.339751" elapsed="0.000359"/>
</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-07-28T01:55:39.340307" elapsed="0.000327"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:39.341522" 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-07-28T01:55:39.340787" elapsed="0.000826"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:39.342498" 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-07-28T01:55:39.341847" elapsed="0.000684"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:39.802999" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:39.803318" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:39.803742" 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-07-28T01:55:39.342711" elapsed="0.461102"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.810875" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:39.804370" elapsed="0.006632"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b035a7a0&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-07-28T01:55:39.330794" elapsed="0.480487"/>
</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-07-28T01:55:39.328279" elapsed="0.483150"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:55:39.313151" elapsed="0.498496"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.813210" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:39.812344" elapsed="0.000996"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:39.817724" 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-07-28T01:55:39.817941" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:39.817561" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.818713" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edb70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:39.818139" elapsed="0.000604"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.819251" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:39.818906" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.819854" 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-07-28T01:55:39.819551" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:39.820374" 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-07-28T01:55:39.820037" elapsed="0.000364"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:39.821550" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:39.820620" elapsed="0.000962"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.822153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:39.821763" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.822746" 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-07-28T01:55:39.822357" elapsed="0.000474"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.823368" 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-07-28T01:55:39.822995" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.823951" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:39.823597" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.824552" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:39.824165" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.825127" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b01edb70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:39.824758" elapsed="0.000453"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:39.817091" elapsed="0.008178"/>
</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-07-28T01:55:39.826909" 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-07-28T01:55:39.826599" elapsed="0.000377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:39.827417" level="INFO">&lt;?xml version="1.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-07-28T01:55:39.827121" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.828060" level="INFO">${xml} = &lt;Element 'input' at 0x7868a394b0b0&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-07-28T01:55:39.827732" elapsed="0.000358"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:39.828591" 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-07-28T01:55:39.828250" elapsed="0.000393"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.829439" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3948db0&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-07-28T01:55:39.828794" elapsed="0.000703"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:39.830111" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3948bd0&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-07-28T01:55:39.829663" elapsed="0.000477"/>
</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-07-28T01:55:39.830332" elapsed="0.000349"/>
</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-07-28T01:55:39.830836" elapsed="0.000318"/>
</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-07-28T01:55:39.831312" elapsed="0.000318"/>
</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-07-28T01:55:39.831820" elapsed="0.000320"/>
</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-07-28T01:55:39.832317" elapsed="0.000309"/>
</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-07-28T01:55:39.832805" elapsed="0.000319"/>
</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-07-28T01:55:39.833280" elapsed="0.000531"/>
</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-07-28T01:55:39.833965" elapsed="0.000414"/>
</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-07-28T01:55:39.834549" elapsed="0.000401"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:39.835447" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6d2b0&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-07-28T01:55:39.835151" elapsed="0.000341"/>
</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-07-28T01:55:39.835646" elapsed="0.000310"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:39.836749" 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-07-28T01:55:39.836109" elapsed="0.000729"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:39.837697" 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-07-28T01:55:39.837061" elapsed="0.000676"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:40.303672" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:40.303907" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:40.304217" 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-07-28T01:55:39.837875" elapsed="0.466416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.310353" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:40.304842" elapsed="0.005681"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b01edb70&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-07-28T01:55:39.826115" elapsed="0.484591"/>
</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-07-28T01:55:39.825439" elapsed="0.485407"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:55:39.811932" elapsed="0.499008"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.312216" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:40.311585" elapsed="0.000734"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:40.317474" 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-07-28T01:55:40.317652" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:40.317300" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.318346" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:40.317840" elapsed="0.000535"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.318854" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:40.318560" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.319393" 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-07-28T01:55:40.319096" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.320085" 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-07-28T01:55:40.319603" elapsed="0.000510"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:40.321077" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:40.320272" elapsed="0.000838"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.321642" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:40.321277" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.322225" 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-07-28T01:55:40.321851" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.322792" 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-07-28T01:55:40.322441" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.323317" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:40.322995" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.323855" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:40.323534" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.324372" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:40.324061" 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-07-28T01:55:40.316936" elapsed="0.007561"/>
</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-07-28T01:55:40.325832" 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-07-28T01:55:40.325574" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.326313" level="INFO">&lt;?xml version="1.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-07-28T01:55:40.326046" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.326875" level="INFO">${xml} = &lt;Element 'input' at 0x7868b03a7ab0&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-07-28T01:55:40.326547" elapsed="0.000357"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:40.327335" 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-07-28T01:55:40.327051" elapsed="0.000333"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.327953" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b03a7b00&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-07-28T01:55:40.327549" elapsed="0.000431"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.328563" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1f1d530&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-07-28T01:55:40.328142" elapsed="0.000449"/>
</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-07-28T01:55:40.328740" elapsed="0.000286"/>
</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-07-28T01:55:40.329177" elapsed="0.000287"/>
</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-07-28T01:55:40.329621" elapsed="0.000257"/>
</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-07-28T01:55:40.330026" elapsed="0.000300"/>
</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-07-28T01:55:40.330491" 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-07-28T01:55:40.330896" elapsed="0.000252"/>
</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-07-28T01:55:40.331295" elapsed="0.000534"/>
</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-07-28T01:55:40.331984" elapsed="0.000370"/>
</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-07-28T01:55:40.332530" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:40.333371" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a35c0a90&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-07-28T01:55:40.333044" elapsed="0.000355"/>
</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-07-28T01:55:40.333569" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:40.334559" 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-07-28T01:55:40.333987" elapsed="0.000659"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:40.335349" 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-07-28T01:55:40.334803" elapsed="0.000632"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:40.804581" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:40.804831" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:40.805114" 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-07-28T01:55:40.335606" elapsed="0.469571"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.811055" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:40.805702" elapsed="0.005460"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f6c860&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-07-28T01:55:40.325149" elapsed="0.486158"/>
</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-07-28T01:55:40.324652" elapsed="0.486784"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:55:40.311205" elapsed="0.500427"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.812955" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:40.812195" elapsed="0.000868"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:40.817934" 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-07-28T01:55:40.818156" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:40.817784" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.818889" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b030b060&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:40.818344" elapsed="0.000574"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.819407" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:40.819074" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.819921" 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-07-28T01:55:40.819606" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:40.820383" 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-07-28T01:55:40.820104" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:40.821503" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:40.820676" elapsed="0.000860"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.822080" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:40.821701" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.822686" 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-07-28T01:55:40.822316" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.823246" 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-07-28T01:55:40.822925" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.823808" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:40.823498" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.824399" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:40.824051" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.824970" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b030b060&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:40.824619" 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-07-28T01:55:40.817396" elapsed="0.007674"/>
</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-07-28T01:55:40.826744" 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-07-28T01:55:40.826466" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:40.827282" level="INFO">&lt;?xml version="1.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-07-28T01:55:40.827029" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.827860" level="INFO">${xml} = &lt;Element 'input' at 0x7868b030a3e0&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-07-28T01:55:40.827547" elapsed="0.000341"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:40.828340" 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-07-28T01:55:40.828036" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.829025" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b03085e0&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-07-28T01:55:40.828552" elapsed="0.000534"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:40.829683" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1fdb880&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-07-28T01:55:40.829242" elapsed="0.000470"/>
</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-07-28T01:55:40.829863" elapsed="0.000314"/>
</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-07-28T01:55:40.830331" elapsed="0.000360"/>
</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-07-28T01:55:40.830885" elapsed="0.000247"/>
</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-07-28T01:55:40.831281" elapsed="0.000293"/>
</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-07-28T01:55:40.831723" elapsed="0.000277"/>
</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-07-28T01:55:40.832147" elapsed="0.000278"/>
</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-07-28T01:55:40.832626" 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-07-28T01:55:40.833175" elapsed="0.000408"/>
</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-07-28T01:55:40.833734" elapsed="0.000379"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:40.834598" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f1710&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-07-28T01:55:40.834271" elapsed="0.000356"/>
</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-07-28T01:55:40.834843" elapsed="0.000288"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:40.835868" 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-07-28T01:55:40.835281" elapsed="0.000672"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:40.836681" 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-07-28T01:55:40.836104" elapsed="0.000608"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:41.305421" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:41.305876" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:41.306191" 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-07-28T01:55:40.836884" elapsed="0.469374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.312313" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:41.306774" elapsed="0.005671"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b030b060&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-07-28T01:55:40.826013" elapsed="0.486640"/>
</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-07-28T01:55:40.825221" elapsed="0.487583"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:55:40.811892" elapsed="0.501022"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.314224" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:41.313567" elapsed="0.000781"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:41.319012" 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-07-28T01:55:41.319205" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:41.318856" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.319905" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:41.319407" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.320413" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:41.320107" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.320944" 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-07-28T01:55:41.320632" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.321425" 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-07-28T01:55:41.321132" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:41.322427" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:41.321630" elapsed="0.000844"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.322987" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:41.322644" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.323601" 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-07-28T01:55:41.323223" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.324156" 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-07-28T01:55:41.323824" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.324727" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:41.324374" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.325279" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:41.324950" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.325823" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f3650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:41.325496" 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-07-28T01:55:41.318481" elapsed="0.007441"/>
</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-07-28T01:55:41.327311" 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-07-28T01:55:41.327020" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.327884" level="INFO">&lt;?xml version="1.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-07-28T01:55:41.327616" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.328426" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05ef830&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-07-28T01:55:41.328114" elapsed="0.000362"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:41.328919" 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-07-28T01:55:41.328634" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.329693" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b05ee430&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-07-28T01:55:41.329119" elapsed="0.000603"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.330277" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b03232e0&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-07-28T01:55:41.329887" 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-07-28T01:55:41.330471" elapsed="0.000304"/>
</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-07-28T01:55:41.330934" elapsed="0.000341"/>
</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-07-28T01:55:41.331441" elapsed="0.000296"/>
</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-07-28T01:55:41.331906" elapsed="0.000261"/>
</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-07-28T01:55:41.332327" elapsed="0.000287"/>
</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-07-28T01:55:41.332783" elapsed="0.000245"/>
</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-07-28T01:55:41.333186" elapsed="0.000411"/>
</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-07-28T01:55:41.333766" 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-07-28T01:55:41.334283" elapsed="0.000366"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:41.335104" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069b6a0&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-07-28T01:55:41.334816" 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-07-28T01:55:41.335317" elapsed="0.000280"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:41.336280" 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-07-28T01:55:41.335748" elapsed="0.000659"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:41.337178" 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-07-28T01:55:41.336609" elapsed="0.000603"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:41.807367" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:41.807651" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:41.808018" 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-07-28T01:55:41.337348" elapsed="0.470736"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.812968" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:41.808635" elapsed="0.004400"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f3650&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-07-28T01:55:41.326593" elapsed="0.486534"/>
</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-07-28T01:55:41.326075" elapsed="0.487136"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:55:41.313183" elapsed="0.500093"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.814043" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:41.813683" 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-07-28T01:55:41.819235" 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-07-28T01:55:41.819482" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:41.819015" elapsed="0.000511"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.820376" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:41.819800" elapsed="0.000609"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.820887" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:41.820587" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.821430" 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-07-28T01:55:41.821133" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:41.821929" 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-07-28T01:55:41.821636" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:41.823141" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:41.822109" elapsed="0.001065"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.823706" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:41.823339" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.824271" 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-07-28T01:55:41.823943" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.824817" 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-07-28T01:55:41.824483" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.825333" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:41.825025" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.825868" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:41.825548" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.826407" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:41.826084" 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-07-28T01:55:41.818500" elapsed="0.008025"/>
</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-07-28T01:55:41.827947" 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-07-28T01:55:41.827638" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:41.828415" level="INFO">&lt;?xml version="1.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-07-28T01:55:41.828168" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.828989" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e4a40&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-07-28T01:55:41.828701" elapsed="0.000324"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:41.829479" 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-07-28T01:55:41.829177" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.830098" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e42c0&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-07-28T01:55:41.829677" elapsed="0.000451"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:41.830698" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a36e74c0&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-07-28T01:55:41.830279" elapsed="0.000447"/>
</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-07-28T01:55:41.830875" 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-07-28T01:55:41.831308" elapsed="0.000372"/>
</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-07-28T01:55:41.831871" 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-07-28T01:55:41.832272" elapsed="0.000277"/>
</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-07-28T01:55:41.832699" 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-07-28T01:55:41.833113" 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-07-28T01:55:41.833528" elapsed="0.000511"/>
</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-07-28T01:55:41.834189" 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-07-28T01:55:41.834727" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:41.835518" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f7d0d0&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-07-28T01:55:41.835229" 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-07-28T01:55:41.835697" elapsed="0.000310"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:41.836697" 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-07-28T01:55:41.836156" elapsed="0.000666"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:41.837542" 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-07-28T01:55:41.836972" elapsed="0.000603"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:42.309744" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:42.310014" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:42.310381" 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-07-28T01:55:41.837711" elapsed="0.472738"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.315309" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:42.311109" elapsed="0.004266"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e7880&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-07-28T01:55:41.827210" 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-07-28T01:55:41.826691" elapsed="0.488948"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:55:41.813450" elapsed="0.502248"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.316596" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:42.316115" 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-07-28T01:55:42.322591" 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-07-28T01:55:42.322835" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:42.322349" elapsed="0.000531"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.323951" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7e340&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:42.323179" elapsed="0.000816"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.324961" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:42.324481" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.325508" 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-07-28T01:55:42.325184" elapsed="0.000353"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.325976" 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-07-28T01:55:42.325697" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:42.327004" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:42.326159" elapsed="0.000877"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.327569" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:42.327204" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.328088" 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-07-28T01:55:42.327771" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.328717" 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-07-28T01:55:42.328322" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.329442" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:42.328918" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.330064" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:42.329677" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.330616" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7e340&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:42.330269" 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-07-28T01:55:42.321739" elapsed="0.008979"/>
</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-07-28T01:55:42.332112" 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-07-28T01:55:42.331855" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.332662" level="INFO">&lt;?xml version="1.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-07-28T01:55:42.332386" elapsed="0.000430"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.333364" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f7e8e0&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-07-28T01:55:42.333021" elapsed="0.000374"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:42.333855" 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-07-28T01:55:42.333565" elapsed="0.000341"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.334493" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f7e110&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-07-28T01:55:42.334056" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.335082" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3f7f240&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-07-28T01:55:42.334686" 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-07-28T01:55:42.335263" 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-07-28T01:55:42.335717" elapsed="0.000270"/>
</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-07-28T01:55:42.336143" elapsed="0.000274"/>
</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-07-28T01:55:42.336597" elapsed="0.000241"/>
</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-07-28T01:55:42.336994" elapsed="0.000246"/>
</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-07-28T01:55:42.337385" elapsed="0.000266"/>
</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-07-28T01:55:42.337801" elapsed="0.000382"/>
</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-07-28T01:55:42.338332" elapsed="0.000390"/>
</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-07-28T01:55:42.338871" elapsed="0.000347"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:42.339667" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6d530&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-07-28T01:55:42.339376" 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-07-28T01:55:42.339856" elapsed="0.000250"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:42.340969" 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-07-28T01:55:42.340310" elapsed="0.000799"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:42.341877" 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-07-28T01:55:42.341277" elapsed="0.000633"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:42.810539" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:42.810793" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:42.811105" 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-07-28T01:55:42.342054" elapsed="0.469119"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.817155" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:42.811732" elapsed="0.005530"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f7e340&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-07-28T01:55:42.331407" elapsed="0.486002"/>
</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-07-28T01:55:42.330871" elapsed="0.486710"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:55:42.315868" elapsed="0.501827"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.818945" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:42.818288" elapsed="0.000781"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:42.824439" 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-07-28T01:55:42.824642" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:42.824281" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.825481" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:42.824890" elapsed="0.000624"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.826067" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:42.825760" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.826575" 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-07-28T01:55:42.826254" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:42.827074" 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-07-28T01:55:42.826770" elapsed="0.000332"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:42.828124" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:42.827268" elapsed="0.000887"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.828703" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:42.828326" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.829286" 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-07-28T01:55:42.828960" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.829850" 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-07-28T01:55:42.829515" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.830372" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:42.830050" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.830927" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:42.830597" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.831495" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:42.831147" elapsed="0.000392"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:42.823884" elapsed="0.007716"/>
</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-07-28T01:55:42.833090" 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-07-28T01:55:42.832815" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:42.833587" level="INFO">&lt;?xml version="1.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-07-28T01:55:42.833305" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.836012" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f66f20&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-07-28T01:55:42.833882" elapsed="0.002161"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:42.836559" 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-07-28T01:55:42.836214" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.838143" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f67380&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-07-28T01:55:42.836946" elapsed="0.001274"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:42.839737" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3f64310&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-07-28T01:55:42.838750" elapsed="0.001053"/>
</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-07-28T01:55:42.840140" elapsed="0.000772"/>
</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-07-28T01:55:42.841301" elapsed="0.000685"/>
</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-07-28T01:55:42.842352" elapsed="0.000745"/>
</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-07-28T01:55:42.843530" elapsed="0.000595"/>
</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-07-28T01:55:42.844609" elapsed="0.000717"/>
</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-07-28T01:55:42.845760" elapsed="0.000417"/>
</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-07-28T01:55:42.846335" elapsed="0.000419"/>
</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-07-28T01:55:42.846910" elapsed="0.000505"/>
</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-07-28T01:55:42.847618" elapsed="0.000392"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:42.848569" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3842f70&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-07-28T01:55:42.848217" elapsed="0.000381"/>
</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-07-28T01:55:42.848756" elapsed="0.000313"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:42.850004" 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-07-28T01:55:42.849230" elapsed="0.001001"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:42.851128" 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-07-28T01:55:42.850390" elapsed="0.000773"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:43.311968" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:43.312279" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:43.312679" 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-07-28T01:55:42.851319" elapsed="0.461490"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.319753" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:43.313453" elapsed="0.006478"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f66930&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-07-28T01:55:42.832359" elapsed="0.487722"/>
</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-07-28T01:55:42.831763" elapsed="0.488447"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:55:42.817957" elapsed="0.502405"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.321854" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:43.321016" elapsed="0.000975"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:43.326038" 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-07-28T01:55:43.326227" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:43.325847" elapsed="0.000409"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.326953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:43.326449" elapsed="0.000575"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.327605" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:43.327256" elapsed="0.000377"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.328110" 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-07-28T01:55:43.327827" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.328623" 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-07-28T01:55:43.328328" elapsed="0.000359"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:43.329713" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:43.328843" elapsed="0.000903"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.330322" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:43.329913" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.330894" 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-07-28T01:55:43.330538" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.331499" 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-07-28T01:55:43.331129" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.332048" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:43.331734" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.332654" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:43.332286" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.333222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:43.332857" elapsed="0.000496"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:43.325387" elapsed="0.008026"/>
</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-07-28T01:55:43.335006" 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-07-28T01:55:43.334746" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.335557" level="INFO">&lt;?xml version="1.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-07-28T01:55:43.335253" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.336088" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e4cc0&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-07-28T01:55:43.335770" elapsed="0.000347"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:43.336669" 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-07-28T01:55:43.336338" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.337432" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e6fc0&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-07-28T01:55:43.336867" elapsed="0.000612"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.338192" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3843150&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-07-28T01:55:43.337638" elapsed="0.000582"/>
</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-07-28T01:55:43.338387" elapsed="0.000306"/>
</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-07-28T01:55:43.338849" elapsed="0.000280"/>
</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-07-28T01:55:43.339287" elapsed="0.000272"/>
</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-07-28T01:55:43.339722" elapsed="0.000241"/>
</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-07-28T01:55:43.340125" 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-07-28T01:55:43.340533" elapsed="0.000256"/>
</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-07-28T01:55:43.340940" elapsed="0.000408"/>
</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-07-28T01:55:43.341525" elapsed="0.000365"/>
</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-07-28T01:55:43.342089" elapsed="0.000512"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:43.343237" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069a340&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-07-28T01:55:43.342837" elapsed="0.000439"/>
</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-07-28T01:55:43.343527" elapsed="0.000370"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:43.344833" 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-07-28T01:55:43.344111" elapsed="0.000839"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:43.346017" 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-07-28T01:55:43.345178" elapsed="0.000889"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:43.847735" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:43.848081" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:43.848364" 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-07-28T01:55:43.346276" elapsed="0.502155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.852971" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:43.848962" elapsed="0.004076"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3843470&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-07-28T01:55:43.334185" elapsed="0.518962"/>
</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-07-28T01:55:43.333583" elapsed="0.519651"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:55:43.320708" elapsed="0.532584"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.854144" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:43.853695" elapsed="0.000519"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:43.859343" 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-07-28T01:55:43.859711" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:43.859117" elapsed="0.000640"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.860684" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:43.859991" elapsed="0.000733"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.861367" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:43.860959" elapsed="0.000445"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.862118" 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-07-28T01:55:43.861659" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:43.862600" 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-07-28T01:55:43.862303" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:43.863814" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:43.862781" elapsed="0.001066"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.864369" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:43.864018" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.864920" 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-07-28T01:55:43.864598" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.865474" 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-07-28T01:55:43.865122" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.866061" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:43.865688" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.866618" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:43.866277" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.867147" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069b920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:43.866823" 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-07-28T01:55:43.858586" elapsed="0.008660"/>
</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-07-28T01:55:43.868664" 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-07-28T01:55:43.868375" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:43.869200" level="INFO">&lt;?xml version="1.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-07-28T01:55:43.868948" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.869722" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05eda30&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-07-28T01:55:43.869424" elapsed="0.000366"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:43.870254" 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-07-28T01:55:43.869960" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.870869" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b05edda0&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-07-28T01:55:43.870465" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:43.871474" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b0319760&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-07-28T01:55:43.871062" elapsed="0.000441"/>
</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-07-28T01:55:43.871654" 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-07-28T01:55:43.872092" 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-07-28T01:55:43.872528" 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-07-28T01:55:43.872936" 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-07-28T01:55:43.873333" elapsed="0.000258"/>
</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-07-28T01:55:43.873749" elapsed="0.000266"/>
</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-07-28T01:55:43.874200" elapsed="0.000408"/>
</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-07-28T01:55:43.874759" elapsed="0.000493"/>
</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-07-28T01:55:43.875415" elapsed="0.000370"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:43.876222" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1fdaed0&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-07-28T01:55:43.875944" 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-07-28T01:55:43.876413" elapsed="0.000277"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:43.877370" 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-07-28T01:55:43.876840" elapsed="0.000668"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:43.878291" 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-07-28T01:55:43.877674" elapsed="0.000649"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:44.314807" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:44.315057" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:44.315325" 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-07-28T01:55:43.878471" elapsed="0.436919"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.320728" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:44.315882" elapsed="0.004948"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b069b920&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-07-28T01:55:43.867933" elapsed="0.453037"/>
</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-07-28T01:55:43.867402" elapsed="0.453702"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:55:43.853484" elapsed="0.467707"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.322442" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:44.321778" elapsed="0.000801"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:44.326368" 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-07-28T01:55:44.326569" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:44.326203" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.327220" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdaac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:44.326759" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.327783" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:44.327408" elapsed="0.000404"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.328250" 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-07-28T01:55:44.327968" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.328728" 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-07-28T01:55:44.328431" elapsed="0.000324"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:44.329692" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:44.328911" elapsed="0.000813"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.330262" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:44.329894" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.330803" 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-07-28T01:55:44.330484" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.331316" 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-07-28T01:55:44.331001" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.331840" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:44.331531" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.332389" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:44.332042" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.332935" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1fdaac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:44.332616" 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-07-28T01:55:44.325807" elapsed="0.007230"/>
</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-07-28T01:55:44.334653" 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-07-28T01:55:44.334334" elapsed="0.000391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.335137" level="INFO">&lt;?xml version="1.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-07-28T01:55:44.334887" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.335636" level="INFO">${xml} = &lt;Element 'input' at 0x7868b1fdbc40&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-07-28T01:55:44.335344" elapsed="0.000357"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:44.336131" 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-07-28T01:55:44.335857" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.336721" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b1fdb6a0&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-07-28T01:55:44.336324" elapsed="0.000424"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.337263" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b1f1d530&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-07-28T01:55:44.336897" elapsed="0.000397"/>
</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-07-28T01:55:44.337447" 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-07-28T01:55:44.337895" elapsed="0.000324"/>
</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-07-28T01:55:44.338391" elapsed="0.000266"/>
</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-07-28T01:55:44.338806" 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-07-28T01:55:44.339192" elapsed="0.000398"/>
</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-07-28T01:55:44.339738" elapsed="0.000281"/>
</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-07-28T01:55:44.340179" 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-07-28T01:55:44.340725" elapsed="0.000355"/>
</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-07-28T01:55:44.341232" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:44.342027" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b063ce50&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-07-28T01:55:44.341746" 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-07-28T01:55:44.342256" elapsed="0.000278"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:44.343185" 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-07-28T01:55:44.342685" elapsed="0.000584"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:44.343957" 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-07-28T01:55:44.343423" elapsed="0.000566"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:44.816037" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:44.816196" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:44.816391" 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-07-28T01:55:44.344182" elapsed="0.472253"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.821579" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:44.816838" elapsed="0.004812"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b1fdaac0&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-07-28T01:55:44.333709" elapsed="0.488049"/>
</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-07-28T01:55:44.333193" elapsed="0.488657"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:55:44.321446" elapsed="0.500467"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.822937" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:44.822364" 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-07-28T01:55:44.828557" 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-07-28T01:55:44.828747" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:44.828372" elapsed="0.000405"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.829419" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:44.828943" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.829940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:44.829628" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.830414" 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-07-28T01:55:44.830131" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:44.830924" 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-07-28T01:55:44.830612" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:44.831894" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:44.831109" elapsed="0.000876"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.832635" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:44.832172" elapsed="0.000524"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.833344" 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-07-28T01:55:44.832914" elapsed="0.000489"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.833930" 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-07-28T01:55:44.833597" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.834472" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:44.834140" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.835070" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:44.834742" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.835622" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:44.835278" 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-07-28T01:55:44.827959" elapsed="0.007770"/>
</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-07-28T01:55:44.837205" 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-07-28T01:55:44.836875" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:44.837848" level="INFO">&lt;?xml version="1.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-07-28T01:55:44.837510" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.838428" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f6fa60&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-07-28T01:55:44.838131" elapsed="0.000343"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:44.838957" 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-07-28T01:55:44.838651" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.839594" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f6de40&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-07-28T01:55:44.839157" elapsed="0.000466"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:44.840343" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3f6cc20&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-07-28T01:55:44.839777" elapsed="0.000595"/>
</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-07-28T01:55:44.840555" 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-07-28T01:55:44.841041" elapsed="0.000290"/>
</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-07-28T01:55:44.841506" elapsed="0.000251"/>
</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-07-28T01:55:44.841908" elapsed="0.000244"/>
</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-07-28T01:55:44.842302" elapsed="0.000320"/>
</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-07-28T01:55:44.842867" elapsed="0.000328"/>
</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-07-28T01:55:44.843404" 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-07-28T01:55:44.844065" 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-07-28T01:55:44.844591" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:44.845385" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a394b600&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-07-28T01:55:44.845107" 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-07-28T01:55:44.845584" elapsed="0.000271"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:44.846531" 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-07-28T01:55:44.846009" elapsed="0.000608"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:44.847515" 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-07-28T01:55:44.846800" elapsed="0.000759"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:45.316774" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:45.317103" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:45.317376" 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-07-28T01:55:44.847745" elapsed="0.469697"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.321742" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:45.317967" 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 0x7868a3f6e250&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-07-28T01:55:44.836436" elapsed="0.485464"/>
</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-07-28T01:55:44.835908" elapsed="0.486077"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:55:44.822097" elapsed="0.499946"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.322788" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:45.322405" 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-07-28T01:55:45.328000" 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-07-28T01:55:45.328172" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:45.327791" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.328826" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949350&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:45.328362" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.329311" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:45.329018" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.329794" 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-07-28T01:55:45.329512" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.330259" 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-07-28T01:55:45.329977" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:45.331384" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:45.330444" elapsed="0.000973"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.331954" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:45.331601" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.332503" 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-07-28T01:55:45.332166" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.333025" 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-07-28T01:55:45.332704" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.333548" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:45.333223" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.334115" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:45.333796" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.334650" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3949350&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:45.334320" 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-07-28T01:55:45.327252" elapsed="0.007502"/>
</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-07-28T01:55:45.336155" 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-07-28T01:55:45.335869" elapsed="0.000395"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.336696" level="INFO">&lt;?xml version="1.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-07-28T01:55:45.336422" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.337196" level="INFO">${xml} = &lt;Element 'input' at 0x7868b01ed080&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-07-28T01:55:45.336915" elapsed="0.000310"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:45.337677" 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-07-28T01:55:45.337373" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.338265" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b01ef2e0&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-07-28T01:55:45.337878" elapsed="0.000415"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.338837" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b01ed170&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-07-28T01:55:45.338446" elapsed="0.000421"/>
</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-07-28T01:55:45.339018" elapsed="0.000305"/>
</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-07-28T01:55:45.339489" 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-07-28T01:55:45.339908" 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-07-28T01:55:45.340299" elapsed="0.000260"/>
</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-07-28T01:55:45.340710" elapsed="0.000244"/>
</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-07-28T01:55:45.341107" 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-07-28T01:55:45.341512" elapsed="0.000360"/>
</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-07-28T01:55:45.342022" elapsed="0.000480"/>
</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-07-28T01:55:45.342655" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:45.343499" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f7eb10&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-07-28T01:55:45.343203" 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-07-28T01:55:45.343683" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:45.344626" 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-07-28T01:55:45.344115" elapsed="0.000629"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:45.345413" 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-07-28T01:55:45.344898" elapsed="0.000546"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:45.819000" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:45.819240" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:45.819644" 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-07-28T01:55:45.345595" elapsed="0.474132"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.825774" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:45.820232" elapsed="0.005657"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3949350&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-07-28T01:55:45.335450" elapsed="0.490602"/>
</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-07-28T01:55:45.334908" elapsed="0.491291"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:55:45.322216" elapsed="0.504081"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.827865" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:45.827004" elapsed="0.000977"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:45.831770" 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-07-28T01:55:45.831959" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:45.831576" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.832643" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7e0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:45.832158" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.833131" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:45.832835" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.833615" 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-07-28T01:55:45.833315" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:45.834154" 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-07-28T01:55:45.833865" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:45.835152" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:45.834379" elapsed="0.000858"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.835851" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:45.835414" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.836384" 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-07-28T01:55:45.836065" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.836920" 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-07-28T01:55:45.836598" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.837426" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:45.837117" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.837969" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:45.837644" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.838511" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7e0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:45.838178" 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-07-28T01:55:45.831112" elapsed="0.007504"/>
</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-07-28T01:55:45.840252" 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-07-28T01:55:45.839799" elapsed="0.000521"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:45.840739" level="INFO">&lt;?xml version="1.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-07-28T01:55:45.840481" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.841234" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f7de90&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-07-28T01:55:45.840953" elapsed="0.000309"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:45.841726" 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-07-28T01:55:45.841412" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.842375" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f7c8b0&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-07-28T01:55:45.841970" elapsed="0.000433"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:45.843004" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3f7d3f0&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-07-28T01:55:45.842616" 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-07-28T01:55:45.843184" elapsed="0.000351"/>
</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-07-28T01:55:45.843690" elapsed="0.000327"/>
</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-07-28T01:55:45.844183" elapsed="0.000247"/>
</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-07-28T01:55:45.844626" elapsed="0.000241"/>
</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-07-28T01:55:45.845018" elapsed="0.000263"/>
</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-07-28T01:55:45.845436" 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-07-28T01:55:45.845848" elapsed="0.000409"/>
</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-07-28T01:55:45.846408" elapsed="0.000368"/>
</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-07-28T01:55:45.846926" elapsed="0.000344"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:45.847765" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b035b060&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-07-28T01:55:45.847428" elapsed="0.000365"/>
</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-07-28T01:55:45.847943" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:45.848891" 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-07-28T01:55:45.848347" elapsed="0.000635"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:45.849662" 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-07-28T01:55:45.849132" elapsed="0.000562"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:46.320358" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:46.320736" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:46.321023" 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-07-28T01:55:45.849889" elapsed="0.471204"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.326834" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:46.321693" elapsed="0.005250"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f7e0c0&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-07-28T01:55:45.839352" elapsed="0.487732"/>
</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-07-28T01:55:45.838770" elapsed="0.488443"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:55:45.826616" elapsed="0.500695"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.328554" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:46.327928" elapsed="0.000732"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:46.334771" 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-07-28T01:55:46.334938" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.334619" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.335601" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035b7e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:46.335126" elapsed="0.000504"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.336119" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:46.335791" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.336606" 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-07-28T01:55:46.336307" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.337120" 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-07-28T01:55:46.336790" elapsed="0.000358"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:46.338114" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:46.337304" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.338667" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:46.338312" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.339205" 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-07-28T01:55:46.338883" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.339742" 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-07-28T01:55:46.339401" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.340301" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.339976" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.340939" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:46.340558" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.341482" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035b7e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:46.341148" 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-07-28T01:55:46.334239" elapsed="0.007342"/>
</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-07-28T01:55:46.343021" 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-07-28T01:55:46.342757" elapsed="0.000380"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.343562" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.343289" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.344080" level="INFO">${xml} = &lt;Element 'input' at 0x7868a35c1c60&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-07-28T01:55:46.343777" elapsed="0.000331"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:46.344538" 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-07-28T01:55:46.344255" elapsed="0.000331"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.346761" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a35c0310&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-07-28T01:55:46.344734" elapsed="0.002057"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.347356" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b035a250&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-07-28T01:55:46.346954" elapsed="0.000430"/>
</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-07-28T01:55:46.347557" 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-07-28T01:55:46.348081" elapsed="0.000295"/>
</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-07-28T01:55:46.348561" elapsed="0.000260"/>
</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-07-28T01:55:46.348985" elapsed="0.000264"/>
</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-07-28T01:55:46.349398" elapsed="0.000277"/>
</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-07-28T01:55:46.349838" elapsed="0.000261"/>
</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-07-28T01:55:46.350248" elapsed="0.000414"/>
</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-07-28T01:55:46.350821" 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-07-28T01:55:46.351348" elapsed="0.000375"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:46.352248" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f7e570&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-07-28T01:55:46.351937" elapsed="0.000340"/>
</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-07-28T01:55:46.352426" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:46.353381" 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-07-28T01:55:46.352855" elapsed="0.000696"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:46.354259" 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-07-28T01:55:46.353707" elapsed="0.000583"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:46.821099" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:46.821348" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:46.821679" 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-07-28T01:55:46.354445" elapsed="0.467310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.827408" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:46.822243" elapsed="0.005308"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b035b7e0&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-07-28T01:55:46.342243" elapsed="0.485582"/>
</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-07-28T01:55:46.341735" elapsed="0.486233"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:55:46.327591" elapsed="0.500462"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.828851" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:46.828447" elapsed="0.000469"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:46.834183" 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-07-28T01:55:46.834410" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.833953" elapsed="0.000529"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.835396" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7c5e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:46.834711" elapsed="0.000726"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.836206" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:46.835705" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.836963" 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-07-28T01:55:46.836553" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:46.837566" 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-07-28T01:55:46.837259" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:46.838811" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:46.837768" elapsed="0.001074"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.839376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:46.839028" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.839926" 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-07-28T01:55:46.839599" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.840519" 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-07-28T01:55:46.840139" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.841063" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.840737" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.841619" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:46.841265" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.842187" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f7c5e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:46.841848" 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-07-28T01:55:46.833395" elapsed="0.008893"/>
</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-07-28T01:55:46.843715" 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-07-28T01:55:46.843432" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:46.844200" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:46.843949" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.844834" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3f7fb00&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-07-28T01:55:46.844537" elapsed="0.000325"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:46.845303" 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-07-28T01:55:46.845022" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.845962" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3f7f9c0&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-07-28T01:55:46.845541" elapsed="0.000450"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:46.846574" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a3f7ed40&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-07-28T01:55:46.846153" elapsed="0.000449"/>
</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-07-28T01:55:46.846753" elapsed="0.000290"/>
</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-07-28T01:55:46.847196" elapsed="0.000290"/>
</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-07-28T01:55:46.847652" elapsed="0.000265"/>
</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-07-28T01:55:46.848064" elapsed="0.000296"/>
</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-07-28T01:55:46.848540" elapsed="0.000288"/>
</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-07-28T01:55:46.848993" elapsed="0.000270"/>
</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-07-28T01:55:46.849425" elapsed="0.000413"/>
</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-07-28T01:55:46.849989" elapsed="0.000515"/>
</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-07-28T01:55:46.850668" elapsed="0.000370"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:46.851500" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a394bb00&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-07-28T01:55:46.851197" elapsed="0.000342"/>
</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-07-28T01:55:46.851700" elapsed="0.000274"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:46.852753" 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-07-28T01:55:46.852131" elapsed="0.000756"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:46.853642" 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-07-28T01:55:46.853051" elapsed="0.000624"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:47.322534" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:47.322782" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:47.323110" 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-07-28T01:55:46.853809" elapsed="0.469375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.327320" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:47.323733" elapsed="0.003653"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f7c5e0&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-07-28T01:55:46.842993" elapsed="0.484507"/>
</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-07-28T01:55:46.842465" elapsed="0.485122"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:55:46.828226" elapsed="0.499418"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.328371" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:47.328009" 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-07-28T01:55:47.333342" 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-07-28T01:55:47.333538" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:47.333189" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.334232" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:47.333729" elapsed="0.000534"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.334797" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:47.334421" elapsed="0.000403"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.335259" 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-07-28T01:55:47.334980" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.335732" 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-07-28T01:55:47.335438" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:47.336766" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:47.335910" elapsed="0.000897"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.337412" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:47.337022" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.337950" 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-07-28T01:55:47.337635" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.338480" 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-07-28T01:55:47.338147" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.339016" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:47.338679" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.339562" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:47.339228" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.340076" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a394b560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:47.339765" 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-07-28T01:55:47.332730" elapsed="0.007450"/>
</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-07-28T01:55:47.341776" 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-07-28T01:55:47.341521" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.342229" level="INFO">&lt;?xml version="1.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-07-28T01:55:47.341984" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.342856" level="INFO">${xml} = &lt;Element 'input' at 0x7868a3948c70&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-07-28T01:55:47.342492" elapsed="0.000392"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:47.343321" 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-07-28T01:55:47.343033" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.343926" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a3948400&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-07-28T01:55:47.343536" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.344613" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b03a7b00&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-07-28T01:55:47.344106" elapsed="0.000536"/>
</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-07-28T01:55:47.344820" 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-07-28T01:55:47.345258" elapsed="0.000304"/>
</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-07-28T01:55:47.345721" elapsed="0.000248"/>
</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-07-28T01:55:47.346117" 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-07-28T01:55:47.346535" 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-07-28T01:55:47.346936" 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-07-28T01:55:47.347324" elapsed="0.000385"/>
</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-07-28T01:55:47.347860" 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-07-28T01:55:47.348366" elapsed="0.000392"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:47.349197" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6fec0&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-07-28T01:55:47.348920" 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-07-28T01:55:47.349382" elapsed="0.000272"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:47.350314" 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-07-28T01:55:47.349804" elapsed="0.000593"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:47.351086" 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-07-28T01:55:47.350562" elapsed="0.000598"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:47.824189" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:47.824610" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:47.824986" 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-07-28T01:55:47.351303" elapsed="0.473817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.832927" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:47.825989" elapsed="0.006988"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a394b560&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-07-28T01:55:47.341101" elapsed="0.491950"/>
</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-07-28T01:55:47.340331" elapsed="0.492845"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:55:47.327816" elapsed="0.505448"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.833891" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:47.833579" elapsed="0.000359"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:47.838073" 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-07-28T01:55:47.838262" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:47.837883" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.839017" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:47.838468" elapsed="0.000579"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.839567" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:47.839252" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.840077" 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-07-28T01:55:47.839752" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:47.840598" 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-07-28T01:55:47.840260" elapsed="0.000366"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:47.841736" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:47.840883" elapsed="0.000887"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.842325" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:47.841985" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.842972" 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-07-28T01:55:47.842587" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.843552" 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-07-28T01:55:47.843173" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.844107" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:47.843751" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.844716" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:47.844310" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.845367" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:47.844967" elapsed="0.000446"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:47.837440" elapsed="0.008047"/>
</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-07-28T01:55:47.846899" 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-07-28T01:55:47.846646" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:47.847425" level="INFO">&lt;?xml version="1.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-07-28T01:55:47.847169" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.847995" level="INFO">${xml} = &lt;Element 'input' at 0x7868b1f1da80&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-07-28T01:55:47.847696" elapsed="0.000329"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:47.848552" 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-07-28T01:55:47.848220" elapsed="0.000383"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.849359" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b1f1ee30&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-07-28T01:55:47.848774" elapsed="0.000615"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:47.850177" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b3731800&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-07-28T01:55:47.849561" elapsed="0.000645"/>
</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-07-28T01:55:47.850358" elapsed="0.000378"/>
</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-07-28T01:55:47.850892" elapsed="0.000307"/>
</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-07-28T01:55:47.851356" elapsed="0.000272"/>
</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-07-28T01:55:47.851816" elapsed="0.000244"/>
</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-07-28T01:55:47.852257" elapsed="0.000264"/>
</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-07-28T01:55:47.852673" elapsed="0.000287"/>
</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-07-28T01:55:47.853176" elapsed="0.000480"/>
</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-07-28T01:55:47.853813" elapsed="0.000387"/>
</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-07-28T01:55:47.854352" elapsed="0.000431"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:47.855265" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0691b20&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-07-28T01:55:47.854985" 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-07-28T01:55:47.855447" elapsed="0.000270"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:47.856467" 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-07-28T01:55:47.855910" elapsed="0.000643"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:47.857295" 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-07-28T01:55:47.856707" elapsed="0.000620"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:48.324513" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:48.324895" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:48.325167" 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-07-28T01:55:47.857478" elapsed="0.467751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.330033" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:48.325749" elapsed="0.004350"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a3f6c860&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-07-28T01:55:47.846228" elapsed="0.483963"/>
</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-07-28T01:55:47.845644" elapsed="0.484626"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:55:47.833406" elapsed="0.496919"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.331201" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:48.330751" 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-07-28T01:55:48.336537" 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-07-28T01:55:48.336770" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:48.336300" elapsed="0.000515"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.337663" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2cf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:48.337037" elapsed="0.000668"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.338379" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:48.337943" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.340043" 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-07-28T01:55:48.338670" elapsed="0.001433"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.340929" 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-07-28T01:55:48.340442" elapsed="0.000525"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:48.342042" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:48.341158" elapsed="0.000920"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.342634" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:48.342247" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.343192" 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-07-28T01:55:48.342852" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.343756" 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-07-28T01:55:48.343395" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.344322" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:48.343971" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.344891" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:48.344556" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.345438" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f2cf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:48.345105" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:48.335707" elapsed="0.009851"/>
</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-07-28T01:55:48.346944" 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-07-28T01:55:48.346679" elapsed="0.000410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.347527" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.347249" elapsed="0.000338"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.348041" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05f3920&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-07-28T01:55:48.347739" elapsed="0.000331"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:48.348577" 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-07-28T01:55:48.348273" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.349166" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b05f09f0&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-07-28T01:55:48.348788" elapsed="0.000406"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.349739" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b05f0bd0&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-07-28T01:55:48.349347" 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-07-28T01:55:48.349928" elapsed="0.000286"/>
</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-07-28T01:55:48.350371" elapsed="0.000297"/>
</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-07-28T01:55:48.350824" 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-07-28T01:55:48.351230" elapsed="0.000266"/>
</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-07-28T01:55:48.351658" elapsed="0.000247"/>
</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-07-28T01:55:48.352058" elapsed="0.000277"/>
</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-07-28T01:55:48.352507" 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-07-28T01:55:48.353003" elapsed="0.000338"/>
</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-07-28T01:55:48.353507" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:48.354307" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0301ee0&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-07-28T01:55:48.354016" 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-07-28T01:55:48.354516" elapsed="0.000257"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:48.355366" 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-07-28T01:55:48.354934" elapsed="0.000505"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:48.356084" 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-07-28T01:55:48.355615" elapsed="0.000546"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:48.826058" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:48.826290" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:48.826613" 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-07-28T01:55:48.356312" elapsed="0.470372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.832256" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:48.827168" elapsed="0.005190"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b05f2cf0&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-07-28T01:55:48.346246" elapsed="0.486290"/>
</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-07-28T01:55:48.345726" elapsed="0.486944"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:55:48.330557" elapsed="0.502202"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.833984" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:48.833329" elapsed="0.000762"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:48.838213" 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-07-28T01:55:48.838441" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.838061" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.839108" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0300540&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:48.838654" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.839603" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:48.839293" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.840066" 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-07-28T01:55:48.839784" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:48.840542" 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-07-28T01:55:48.840249" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:48.841549" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.840736" elapsed="0.000846"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.842089" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:48.841751" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.842722" 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-07-28T01:55:48.842295" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.843313" 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-07-28T01:55:48.842983" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.843852" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.843528" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.844494" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.844125" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.845012" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0300540&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:48.844700" 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-07-28T01:55:48.837693" elapsed="0.007416"/>
</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-07-28T01:55:48.846448" 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-07-28T01:55:48.846195" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:48.846948" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:48.846700" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.847442" level="INFO">${xml} = &lt;Element 'input' at 0x7868b05ec540&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-07-28T01:55:48.847153" elapsed="0.000321"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:48.847903" 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-07-28T01:55:48.847636" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.848515" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868b0323420&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-07-28T01:55:48.848107" elapsed="0.000440"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:48.849234" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868b052d3f0&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-07-28T01:55:48.848710" elapsed="0.000553"/>
</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-07-28T01:55:48.849423" 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-07-28T01:55:48.849863" 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-07-28T01:55:48.850286" 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-07-28T01:55:48.850704" 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-07-28T01:55:48.851100" 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-07-28T01:55:48.851566" elapsed="0.000245"/>
</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-07-28T01:55:48.851966" elapsed="0.000480"/>
</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-07-28T01:55:48.852680" elapsed="0.000468"/>
</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-07-28T01:55:48.853353" elapsed="0.000537"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:48.854509" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6cb30&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-07-28T01:55:48.854108" elapsed="0.000440"/>
</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-07-28T01:55:48.854816" elapsed="0.000330"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:48.855761" 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-07-28T01:55:48.855296" elapsed="0.000541"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:48.856496" 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-07-28T01:55:48.855984" elapsed="0.000545"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:49.326533" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:49.326851" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:49.327114" 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-07-28T01:55:48.856687" elapsed="0.470510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.332453" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:49.327687" elapsed="0.004853"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868b0300540&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-07-28T01:55:48.845777" elapsed="0.486851"/>
</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-07-28T01:55:48.845261" elapsed="0.487448"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:55:48.833022" elapsed="0.499748"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.333570" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:49.333119" elapsed="0.000519"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:49.338799" 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-07-28T01:55:49.339027" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:49.338583" elapsed="0.000485"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:49.339912" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:49.339299" elapsed="0.000654"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:49.340665" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:49.340229" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:49.341260" 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-07-28T01:55:49.340931" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:49.341751" 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-07-28T01:55:49.341448" elapsed="0.000330"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:49.342772" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:49.341927" elapsed="0.000876"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.343311" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:49.342965" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.343866" 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-07-28T01:55:49.343538" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.344415" 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-07-28T01:55:49.344064" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.344954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:49.344647" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.345497" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:49.345162" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.346021" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:49.345709" 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-07-28T01:55:49.338056" elapsed="0.008073"/>
</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-07-28T01:55:49.347502" 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-07-28T01:55:49.347226" elapsed="0.000380"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.348029" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:49.347756" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:49.348656" level="INFO">${xml} = &lt;Element 'input' at 0x7868a36e54e0&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-07-28T01:55:49.348325" elapsed="0.000360"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:49.349120" 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-07-28T01:55:49.348849" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:49.349773" level="INFO">${origflow} = &lt;Element 'flow' at 0x7868a36e7f10&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-07-28T01:55:49.349329" elapsed="0.000473"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:49.350327" level="INFO">${updflow} = &lt;Element 'flow' at 0x7868a36e5350&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-07-28T01:55:49.349953" 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-07-28T01:55:49.350531" 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-07-28T01:55:49.350963" 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-07-28T01:55:49.351387" elapsed="0.000271"/>
</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-07-28T01:55:49.351810" 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-07-28T01:55:49.352202" elapsed="0.000276"/>
</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-07-28T01:55:49.352665" elapsed="0.000274"/>
</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-07-28T01:55:49.353104" 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-07-28T01:55:49.353642" elapsed="0.000342"/>
</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-07-28T01:55:49.354143" elapsed="0.000363"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:49.354951" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a38412b0&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-07-28T01:55:49.354664" 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-07-28T01:55:49.355132" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:49.356017" 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-07-28T01:55:49.355563" elapsed="0.000561"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:49.356822" 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-07-28T01:55:49.356276" elapsed="0.000580"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:49.828148" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:49.828378" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:update-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:49.828779" 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-07-28T01:55:49.357003" elapsed="0.471845"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:49.834669" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:49.829371" elapsed="0.005397"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${data}</arg>
<arg>${upddata}</arg>
<doc>Updates a flow by using update-flow operation. &lt;Element 'flow' at 0x7868a36e64d0&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-07-28T01:55:49.346824" elapsed="0.488102"/>
</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-07-28T01:55:49.346282" elapsed="0.488787"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:55:49.332934" elapsed="0.502226"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:55:24.698830" elapsed="25.136411"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:55:52.836839" 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-07-28T01:55:49.835632" elapsed="3.001475"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:55:52.846367" 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-07-28T01:55:52.837676" elapsed="0.008943"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:55:52.976740" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=98.940s, table=0, n_packets=17, n_bytes=1322, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x1, duration=28.098s, table=2, n_packets=0, n_bytes=0, priority=1,ip,nw_dst=10.0.1.0/24 actions=drop
 cookie=0x1f, duration=16.519s, table=2, n_packets=0, n_bytes=0, priority=31,ip,nw_dst=10.0.0.0/24 actions=TABLE
 cookie=0x24, duration=16.021s, table=2, n_packets=0, n_bytes=0, priority=36,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0x26, duration=15.517s, table=2, n_packets=0, n_bytes=0, priority=38,ip,nw_dst=10.0.0.0/24 actions=drop
 cookie=0xdc, duration=3.491s, 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.982s, table=2, n_packets=0, n_bytes=0, priority=219,dl_vlan=10,dl_vlan_pcp=3 actions=clear_actions
 cookie=0xda, duration=4.492s, table=2, n_packets=0, n_bytes=0, priority=218,tun_id=0x29a0/0xfff0 actions=goto_table:3
 cookie=0xd6, duration=4.990s, 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.023s, 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.523s, 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=14.010s, 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.512s, 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.497s, 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.546s, 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.049s, 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.493s, 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.994s, 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.503s, 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=8.001s, 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.502s, 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.998s, 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=11.010s, 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.506s, 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.997s, 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.968s, 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.501s, 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.509s, 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=12.011s, 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.505s, 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=13.010s, 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.519s, table=2, n_packets=0, n_bytes=0, priority=45,metadata=0x46605a66/0xfff0ffff actions=TABLE
 cookie=0x2b, duration=15.013s, table=2, n_packets=0, n_bytes=0, priority=43,icmp6,icmp_type=135,icmp_code=1 actions=drop
 cookie=0x17, duration=18.021s, 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.023s, 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.520s, table=2, n_packets=0, n_bytes=0, priority=24,tun_id=0xa1f actions=drop
 cookie=0x14, duration=19.524s, table=2, n_packets=0, n_bytes=0, priority=20,metadata=0x3039/0xf0ff actions=drop
 cookie=0x13, duration=20.033s, table=2, n_packets=0, n_bytes=0, priority=19,metadata=0x3039 actions=drop
 cookie=0x12, duration=20.542s, 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.043s, 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.547s, 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.042s, 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.544s, 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.047s, 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.550s, 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.050s, 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.553s, 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.056s, 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.556s, 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.056s, table=2, n_packets=0, n_bytes=0, priority=3,dl_src=00:00:00:00:00:01 actions=TABLE
 cookie=0x2, duration=27.558s, 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-07-28T01:55:52.847028" elapsed="0.130383"/>
</kw>
<doc>Update all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:55:24.698448" elapsed="28.279280"/>
</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-07-28T01:55:52.991290" 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-07-28T01:55:52.991853" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:52.990772" elapsed="0.001162"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:52.993728" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:52.992407" elapsed="0.001396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:52.995039" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:52.994230" elapsed="0.000876"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:52.996364" 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-07-28T01:55:52.995608" elapsed="0.000825"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:52.997756" 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-07-28T01:55:52.996880" elapsed="0.000949"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:52.998933" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:52.998191" elapsed="0.000779"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:52.999556" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:52.999151" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.000108" 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-07-28T01:55:52.999760" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.000693" 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-07-28T01:55:53.000327" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.001266" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.000904" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.001884" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.001532" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.002443" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.002098" 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-07-28T01:55:52.989422" elapsed="0.013150"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.003191" 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-07-28T01:55:53.002737" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.003684" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.003394" 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-07-28T01:55:53.011920" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.011587" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.018294" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.018944" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.019062" 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-07-28T01:55:53.012160" elapsed="0.006930"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.019582" 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-07-28T01:55:53.019281" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.022375" 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-07-28T01:55:53.019793" elapsed="0.002665"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.025174" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.022610" elapsed="0.002695"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.022572" elapsed="0.002772"/>
</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-07-28T01:55:53.025670" elapsed="0.000040"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.026015" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.025818" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.025794" elapsed="0.000329"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.026169" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:53.028571" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.028640" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.011229" elapsed="0.017443"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.031405" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.029521" elapsed="0.001935"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.029493" elapsed="0.002000"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.032085" 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-07-28T01:55:53.031660" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.032695" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.032297" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.032775" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:53.032973" 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-07-28T01:55:53.029004" elapsed="0.003995"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.033163" elapsed="0.000447"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.010581" elapsed="0.023117"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.041863" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.041508" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.050136" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.052756" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.053224" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.042039" elapsed="0.011227"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.053927" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.053532" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.062239" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.054271" elapsed="0.008967"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.065182" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.063340" elapsed="0.001895"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.063314" elapsed="0.001945"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.087748" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.087800" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.065419" elapsed="0.022404"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.089732" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.087914" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.087892" elapsed="0.001926"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.089853" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:55:53.090071" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.090117" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.041100" elapsed="0.049041"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.092494" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.090838" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.090818" elapsed="0.001746"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.093189" 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-07-28T01:55:53.092724" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.093789" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.093388" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.093869" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.094061" 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-07-28T01:55:53.090408" 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-07-28T01:55:53.094257" elapsed="0.000495"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.040427" elapsed="0.054394"/>
</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-07-28T01:55:52.985334" elapsed="0.109548"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:52.978025" elapsed="0.117005"/>
</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-07-28T01:55:53.106303" 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-07-28T01:55:53.106486" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.106144" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.107146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3691d50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.106684" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.107676" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.107343" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.108151" 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-07-28T01:55:53.107859" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.108641" 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-07-28T01:55:53.108331" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.109479" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.108822" elapsed="0.000691"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.110039" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.109687" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.110678" 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-07-28T01:55:53.110311" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.111293" 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-07-28T01:55:53.110882" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.111862" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.111524" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.112405" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.112070" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.112975" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3691d50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.112633" 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-07-28T01:55:53.105794" elapsed="0.007282"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.113681" 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-07-28T01:55:53.113249" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.114135" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.113870" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.122491" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.122141" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.127451" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.128021" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.128141" 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-07-28T01:55:53.122655" elapsed="0.005531"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.128893" 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-07-28T01:55:53.128445" elapsed="0.000530"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.132738" 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-07-28T01:55:53.129208" elapsed="0.003607"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.135565" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.132917" elapsed="0.002748"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.132889" elapsed="0.002813"/>
</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-07-28T01:55:53.135907" 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-07-28T01:55:53.136302" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.136122" elapsed="0.000232"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.136089" elapsed="0.000288"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.136411" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:53.138099" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.138145" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.121804" elapsed="0.016363"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.140420" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.138754" elapsed="0.001729"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.138736" elapsed="0.001771"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.141072" 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-07-28T01:55:53.140660" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.141794" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.141346" elapsed="0.000477"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.141875" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:53.142062" 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-07-28T01:55:53.138397" elapsed="0.003691"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.142335" 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-07-28T01:55:53.121198" elapsed="0.021639"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.150926" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.150624" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.157030" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.158874" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.159166" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.151084" elapsed="0.008110"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.159667" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.159369" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.165445" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.159912" elapsed="0.006486"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.169138" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.166534" elapsed="0.002675"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.166504" elapsed="0.002745"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.193793" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.193849" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.169399" elapsed="0.024482"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.195762" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.193966" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.193946" elapsed="0.001911"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.195893" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.196096" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.196140" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.150225" elapsed="0.045937"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.198514" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.196823" elapsed="0.001739"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.196803" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.199180" 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-07-28T01:55:53.198742" elapsed="0.000466"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.199789" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.199386" elapsed="0.000430"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.199868" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:53.200050" 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-07-28T01:55:53.196397" elapsed="0.003678"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.200247" elapsed="0.000467"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.149601" elapsed="0.051180"/>
</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-07-28T01:55:53.102330" elapsed="0.098509"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.095256" elapsed="0.105705"/>
</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-07-28T01:55:53.212213" 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-07-28T01:55:53.212378" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.212058" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.213024" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3690ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.212590" elapsed="0.000462"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.213537" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.213220" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.214013" 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-07-28T01:55:53.213721" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.214500" 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-07-28T01:55:53.214199" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.215303" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.214687" elapsed="0.000647"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.215865" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.215515" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.216479" 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-07-28T01:55:53.216110" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.217094" 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-07-28T01:55:53.216693" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.217652" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.217296" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.218207" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.217866" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.218775" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3690ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.218412" 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-07-28T01:55:53.211717" elapsed="0.007159"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.219453" 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-07-28T01:55:53.219032" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.219917" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.219667" 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-07-28T01:55:53.228175" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.227849" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.233024" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.233642" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.233758" 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-07-28T01:55:53.228346" elapsed="0.005440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.234301" 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-07-28T01:55:53.233949" elapsed="0.000423"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.238088" 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-07-28T01:55:53.234620" elapsed="0.003543"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.240847" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.238263" elapsed="0.002680"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.238236" elapsed="0.002755"/>
</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-07-28T01:55:53.241242" 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-07-28T01:55:53.241669" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.241428" elapsed="0.000318"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.241401" elapsed="0.000380"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.241828" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:53.243662" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.243716" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.227525" elapsed="0.016215"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.245996" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.244305" elapsed="0.001737"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.244286" elapsed="0.001779"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.246662" 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-07-28T01:55:53.246217" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.247246" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.246868" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.247324" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.247527" 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-07-28T01:55:53.243955" 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-07-28T01:55:53.247728" 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-07-28T01:55:53.226922" elapsed="0.021277"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.256288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.255972" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.264237" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.266369" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.267210" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.256447" elapsed="0.010831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.268507" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.267753" elapsed="0.000864"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.275563" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.269016" elapsed="0.007581"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.279109" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.276703" elapsed="0.002457"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.276675" elapsed="0.002509"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.302004" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.302054" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.279327" elapsed="0.022751"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.304103" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.302239" elapsed="0.001923"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.302217" elapsed="0.001970"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.304221" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:53.304419" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.304481" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.255585" elapsed="0.048920"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.306864" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.305101" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.305083" elapsed="0.001848"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.307544" 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-07-28T01:55:53.307081" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.308136" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.307734" elapsed="0.000430"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.308214" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.308437" 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-07-28T01:55:53.304764" elapsed="0.003715"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.308643" elapsed="0.000432"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.254922" elapsed="0.054256"/>
</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-07-28T01:55:53.208271" elapsed="0.100966"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.201174" elapsed="0.108181"/>
</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-07-28T01:55:53.321175" 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-07-28T01:55:53.321325" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.320958" elapsed="0.000396"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.321975" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.321526" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.322601" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.322222" elapsed="0.000407"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.323101" 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-07-28T01:55:53.322785" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.323573" 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-07-28T01:55:53.323281" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.324381" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.323750" elapsed="0.000662"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.324922" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.324589" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.325513" 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-07-28T01:55:53.325165" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.326043" 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-07-28T01:55:53.325712" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.326620" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.326240" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.327153" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.326828" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.327695" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.327352" 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-07-28T01:55:53.320538" elapsed="0.007256"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.328356" 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-07-28T01:55:53.327944" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.328826" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.328561" 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-07-28T01:55:53.337010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.336710" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.344454" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.345274" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.345421" 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-07-28T01:55:53.337204" elapsed="0.008257"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.346160" 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-07-28T01:55:53.345751" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.350161" 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-07-28T01:55:53.346518" elapsed="0.003716"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.352513" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.350332" elapsed="0.002250"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.350306" elapsed="0.002300"/>
</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-07-28T01:55:53.352748" 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-07-28T01:55:53.353061" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.352919" elapsed="0.000195"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.352899" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.353169" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:53.354919" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.354965" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.336339" elapsed="0.018649"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.357314" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.355594" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.355576" elapsed="0.001808"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.357990" 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-07-28T01:55:53.357547" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.358603" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.358187" elapsed="0.000442"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.358716" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:53.358903" 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-07-28T01:55:53.355244" elapsed="0.003684"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.359130" elapsed="0.000449"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.335736" elapsed="0.023908"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.368135" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.367792" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.376810" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.379438" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.379898" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.368293" elapsed="0.011644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.380675" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.380239" elapsed="0.000502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.389292" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.380942" elapsed="0.009299"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.392759" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.390351" elapsed="0.002460"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.390323" elapsed="0.002512"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.458515" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.458581" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.392986" elapsed="0.065620"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.460614" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.458736" elapsed="0.001942"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.458702" elapsed="0.002004"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.460743" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:53.460971" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.461017" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.367358" elapsed="0.093683"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.463279" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.461678" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.461659" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.463999" 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-07-28T01:55:53.463531" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.464629" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.464191" elapsed="0.000467"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.464709" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:53.464895" 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-07-28T01:55:53.461294" elapsed="0.003627"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.465082" 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-07-28T01:55:53.366664" elapsed="0.098918"/>
</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-07-28T01:55:53.316973" elapsed="0.148669"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.309595" elapsed="0.156174"/>
</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-07-28T01:55:53.476798" 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-07-28T01:55:53.476965" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.476629" elapsed="0.000365"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.477583" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.477145" elapsed="0.000465"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.478043" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.477763" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.478504" 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-07-28T01:55:53.478220" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.478948" 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-07-28T01:55:53.478680" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.479806" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.479122" elapsed="0.000715"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.480326" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.479993" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.481117" 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-07-28T01:55:53.480595" elapsed="0.000566"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.481671" 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-07-28T01:55:53.481319" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.482189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.481867" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.482724" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.482386" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.483244" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05efbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.482923" 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-07-28T01:55:53.476278" elapsed="0.007064"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.483893" 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-07-28T01:55:53.483508" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.484317" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.484074" 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-07-28T01:55:53.492106" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.491799" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.498866" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.499737" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.499929" 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-07-28T01:55:53.492264" elapsed="0.007703"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.500672" 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-07-28T01:55:53.500193" elapsed="0.000548"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.504662" 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-07-28T01:55:53.500947" elapsed="0.003790"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.507258" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.504912" elapsed="0.002414"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.504884" elapsed="0.002467"/>
</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-07-28T01:55:53.507583" 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-07-28T01:55:53.507849" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.507679" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.507663" elapsed="0.000263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.507958" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:53.509770" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.509855" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.491481" elapsed="0.018400"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.512225" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.510518" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.510453" elapsed="0.001877"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.512940" 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-07-28T01:55:53.512496" elapsed="0.000505"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.513614" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.513168" elapsed="0.000473"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.513691" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:53.513913" 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-07-28T01:55:53.510093" elapsed="0.003846"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.514134" elapsed="0.000466"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.490914" elapsed="0.023752"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.523234" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.522930" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.532001" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.535031" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.535553" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.523431" elapsed="0.012164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.536238" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.535823" elapsed="0.000480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.542483" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.536575" elapsed="0.006887"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.546324" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.543583" elapsed="0.002791"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.543555" elapsed="0.002842"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.570872" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.570921" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.546560" elapsed="0.024420"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.572975" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.571063" elapsed="0.001972"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.571043" elapsed="0.002017"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.573094" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:53.573298" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.573378" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.522517" elapsed="0.050887"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.575742" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.574020" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.574000" elapsed="0.001809"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.576453" 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-07-28T01:55:53.575994" elapsed="0.000502"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.577055" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.576662" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.577132" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:53.577350" 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-07-28T01:55:53.573644" elapsed="0.003732"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.577552" 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-07-28T01:55:53.521813" elapsed="0.056234"/>
</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-07-28T01:55:53.473031" elapsed="0.105074"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.465980" elapsed="0.112244"/>
</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-07-28T01:55:53.590234" 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-07-28T01:55:53.590379" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.590085" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.591092" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0301ee0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.590639" elapsed="0.000482"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.591632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.591273" elapsed="0.000387"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.592125" 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-07-28T01:55:53.591851" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.592666" 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-07-28T01:55:53.592340" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.593578" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.592844" elapsed="0.000765"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.594099" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.593765" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.594802" 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-07-28T01:55:53.594375" elapsed="0.000471"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.595370" 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-07-28T01:55:53.595040" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.595970" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.595618" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.596542" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.596168" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.597102" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0301ee0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.596776" 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-07-28T01:55:53.589716" elapsed="0.007523"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.597835" 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-07-28T01:55:53.597392" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.598304" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.598019" 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-07-28T01:55:53.606964" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.606639" elapsed="0.000352"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.613438" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.614255" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.614400" 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-07-28T01:55:53.607122" elapsed="0.007314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.615192" 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-07-28T01:55:53.614731" elapsed="0.000525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.619224" 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-07-28T01:55:53.615524" elapsed="0.003776"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.622079" elapsed="0.000083"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.619399" elapsed="0.002821"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.619372" elapsed="0.002883"/>
</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-07-28T01:55:53.622459" elapsed="0.000097"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.622905" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.622710" elapsed="0.000288"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.622685" elapsed="0.000346"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.623123" elapsed="0.000024"/>
</return>
<msg time="2026-07-28T01:55:53.625660" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.625724" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.606271" elapsed="0.019486"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.628866" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.626693" elapsed="0.002219"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.626667" elapsed="0.002323"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.629617" 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-07-28T01:55:53.629154" elapsed="0.000491"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.630208" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.629848" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.630326" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.630528" 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-07-28T01:55:53.626101" elapsed="0.004453"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.630749" elapsed="0.000501"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.605640" elapsed="0.025680"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.640573" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.640232" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.648107" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.650684" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.651084" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.640733" elapsed="0.010389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.651887" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.651509" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.658252" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.652211" elapsed="0.007089"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.661602" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.659405" elapsed="0.002282"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.659377" elapsed="0.002335"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.684694" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.684742" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.661856" elapsed="0.022909"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.686696" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.684844" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.684825" elapsed="0.001992"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.686850" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.687049" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.687093" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.639719" elapsed="0.047397"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.689542" elapsed="0.000053"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.687759" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.687705" elapsed="0.001945"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.690244" 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-07-28T01:55:53.689800" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.690840" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.690432" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.690951" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.691135" 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-07-28T01:55:53.687373" elapsed="0.003787"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.691316" 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-07-28T01:55:53.638724" elapsed="0.053101"/>
</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-07-28T01:55:53.586128" elapsed="0.105755"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.578685" elapsed="0.113384"/>
</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-07-28T01:55:53.703799" 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-07-28T01:55:53.703943" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.703657" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.704676" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e62a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.704197" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.705178" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.704857" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.705694" 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-07-28T01:55:53.705357" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.706178" 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-07-28T01:55:53.705906" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.707146" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.706354" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.707715" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.707332" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.708343" 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-07-28T01:55:53.707951" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.708964" 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-07-28T01:55:53.708595" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.709530" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.709161" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.710085" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.709729" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.710656" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e62a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.710281" elapsed="0.000417"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:53.703271" elapsed="0.007522"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.711365" 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-07-28T01:55:53.710943" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.711845" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.711599" 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-07-28T01:55:53.720413" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.720046" elapsed="0.000396"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.725335" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.725883" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.725988" 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-07-28T01:55:53.720589" elapsed="0.005425"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.726432" 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-07-28T01:55:53.726179" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.729123" 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-07-28T01:55:53.726639" elapsed="0.002562"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.731942" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.729298" elapsed="0.002829"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.729272" elapsed="0.002898"/>
</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-07-28T01:55:53.732377" 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-07-28T01:55:53.732811" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.732533" elapsed="0.000358"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.732508" elapsed="0.000417"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.732970" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:53.735542" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.735608" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.719687" elapsed="0.015954"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.738496" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.736527" elapsed="0.002016"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.736500" elapsed="0.002065"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.739163" 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-07-28T01:55:53.738713" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.739765" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.739390" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.739841" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:53.740062" 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-07-28T01:55:53.735989" elapsed="0.004099"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.740246" 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-07-28T01:55:53.719071" elapsed="0.021698"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.749367" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.749022" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.758101" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.760881" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.761360" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.749573" elapsed="0.011826"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.762102" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.761689" elapsed="0.000480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.768704" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.762416" elapsed="0.007414"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.772195" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.769958" elapsed="0.002301"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.769927" elapsed="0.002364"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.796420" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.796486" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.772487" elapsed="0.024024"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.798491" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.796592" elapsed="0.001958"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.796572" elapsed="0.002002"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.798607" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:55:53.798851" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.798894" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.748561" elapsed="0.050356"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.801280" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.799570" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.799551" elapsed="0.001796"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.802045" 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-07-28T01:55:53.801516" elapsed="0.000557"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.802656" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.802242" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.802732" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:53.802952" 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-07-28T01:55:53.799181" elapsed="0.003797"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.803136" 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-07-28T01:55:53.747778" elapsed="0.055861"/>
</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-07-28T01:55:53.699715" elapsed="0.103981"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.692346" elapsed="0.111468"/>
</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-07-28T01:55:53.815820" 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-07-28T01:55:53.816011" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.815678" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.816717" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069aac0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.816193" elapsed="0.000553"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.817221" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.816898" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.817729" 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-07-28T01:55:53.817434" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.818315" 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-07-28T01:55:53.817998" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.819367" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.818544" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.819947" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.819574" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.820567" 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-07-28T01:55:53.820187" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.821132" 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-07-28T01:55:53.820765" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.821741" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.821366" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.822333" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.821969" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.822914" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069aac0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.822550" 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-07-28T01:55:53.815287" elapsed="0.007727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.823613" 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-07-28T01:55:53.823166" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.824081" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.823796" elapsed="0.000355"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.832651" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.832289" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.839027" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.839819" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.840010" 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-07-28T01:55:53.832807" elapsed="0.007240"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.840756" 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-07-28T01:55:53.840318" elapsed="0.000505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.844707" 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-07-28T01:55:53.841068" elapsed="0.003715"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:53.847568" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.844931" elapsed="0.002710"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.844902" elapsed="0.002765"/>
</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-07-28T01:55:53.847812" 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-07-28T01:55:53.848077" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.847903" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.847887" elapsed="0.000267"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.848187" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:53.849937" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.849983" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.831933" elapsed="0.018105"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.852413" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.850684" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.850666" elapsed="0.001832"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.853082" 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-07-28T01:55:53.852680" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.853824" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.853316" elapsed="0.000534"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.853940" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.854123" 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-07-28T01:55:53.850264" 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-07-28T01:55:53.854343" elapsed="0.000486"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:53.831319" elapsed="0.023575"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.862996" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.862697" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.873393" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.878063" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.878924" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.863151" elapsed="0.015841"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.879719" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.879280" elapsed="0.000505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.885834" 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;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;571000000&lt;/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;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;73000000&lt;/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;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;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-44&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;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-47&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;574000000&lt;/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;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;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-41&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;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-40&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;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-43&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;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-42&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;75000000&lt;/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;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;85000000&lt;/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;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;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-39&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;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-34&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;85000000&lt;/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;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;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-36&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;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-35&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;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-30&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;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-32&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;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-31&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;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-61&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;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-60&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;56000000&lt;/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;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;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-26&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;111000000&lt;/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;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;609000000&lt;/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;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;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-23&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;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-22&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;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-25&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;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-24&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;109000000&lt;/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;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;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-62&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;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-65&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;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-21&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;615000000&lt;/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;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;44000000&lt;/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;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;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-50&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;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-19&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;618000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;160000000&lt;/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;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;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-18&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;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-17&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;620000000&lt;/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;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;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-55&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;565000000&lt;/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;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;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-57&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;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-52&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;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-51&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;568000000&lt;/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;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-53&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;563000000&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-07-28T01:55:53.879987" elapsed="0.006848"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.889011" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.887032" elapsed="0.002029"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.887002" elapsed="0.002081"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.912134" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:53.912183" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.889225" elapsed="0.022983"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:53.914195" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.912290" elapsed="0.001964"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.912270" elapsed="0.002009"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:53.914313" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.914571" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:53.914619" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.862244" elapsed="0.052398"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.916986" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.915246" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.915227" elapsed="0.001827"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.917710" 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-07-28T01:55:53.917243" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.918306" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.917904" elapsed="0.000429"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.918383" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:53.918584" 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-07-28T01:55:53.914865" elapsed="0.003778"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.918807" 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-07-28T01:55:53.861629" elapsed="0.057678"/>
</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-07-28T01:55:53.811681" elapsed="0.107689"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.804154" elapsed="0.115373"/>
</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-07-28T01:55:53.931198" 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-07-28T01:55:53.931382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.931059" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:53.932120" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841fd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:53.931612" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.932645" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:53.932306" elapsed="0.000366"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.933136" 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-07-28T01:55:53.932824" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:53.933642" 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-07-28T01:55:53.933311" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:53.934655" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:53.933819" elapsed="0.000867"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.935209" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.934841" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.935866" 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-07-28T01:55:53.935449" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.936429" 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-07-28T01:55:53.936063" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.937000" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.936646" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.937574" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:53.937199" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.938132" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841fd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:53.937776" 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-07-28T01:55:53.930729" elapsed="0.007500"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.938817" 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-07-28T01:55:53.938379" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.939283" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:53.939034" elapsed="0.000313"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.947716" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.947393" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.952758" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.953449" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:53.953623" 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-07-28T01:55:53.947934" elapsed="0.005726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.954240" 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-07-28T01:55:53.953885" elapsed="0.000418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.957853" 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-07-28T01:55:53.954526" 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-07-28T01:55:53.960574" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:53.958075" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.957997" elapsed="0.002706"/>
</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-07-28T01:55:53.960902" 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-07-28T01:55:53.961209" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:53.961031" elapsed="0.000231"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:53.961008" elapsed="0.000277"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.961316" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:53.962944" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:53.962988" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:53.947034" elapsed="0.015977"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.965324" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.963702" elapsed="0.001667"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.963683" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.965950" 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-07-28T01:55:53.965553" elapsed="0.000423"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.966501" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:53.966136" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:53.966576" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:53.966756" 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-07-28T01:55:53.963223" elapsed="0.003558"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:53.966936" 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-07-28T01:55:53.946426" elapsed="0.020957"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.975168" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:53.974872" elapsed="0.000323"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:53.984015" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:53.985807" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:53.986091" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:53.975321" elapsed="0.010797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.986759" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:53.986282" elapsed="0.000526"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:53.991526" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:53.986954" elapsed="0.005484"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:53.995061" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:53.992581" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:53.992552" elapsed="0.002608"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.017595" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.017645" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:53.995424" elapsed="0.022246"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.019561" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.017755" elapsed="0.001865"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.017735" elapsed="0.001919"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.019694" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:54.019902" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.019949" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:53.974497" elapsed="0.045476"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.022243" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.020575" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.020551" elapsed="0.001759"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.022916" 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-07-28T01:55:54.022464" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.023504" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.023111" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.023582" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:54.023776" 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-07-28T01:55:54.020209" elapsed="0.003594"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.023962" 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-07-28T01:55:53.973867" elapsed="0.050567"/>
</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-07-28T01:55:53.927170" elapsed="0.097377"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:53.919843" elapsed="0.104827"/>
</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-07-28T01:55:54.035933" 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-07-28T01:55:54.036076" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.035781" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.036722" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3690540&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.036264" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.037241" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.036912" elapsed="0.000363"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.037726" 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-07-28T01:55:54.037430" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.038190" 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-07-28T01:55:54.037913" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.039160" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:54.038378" elapsed="0.000814"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.039719" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.039350" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.040306" 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-07-28T01:55:54.039966" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.040876" 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-07-28T01:55:54.040530" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.041455" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.041086" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.042015" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:54.041675" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.042573" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3690540&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.042216" 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-07-28T01:55:54.035429" elapsed="0.007257"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.043253" 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-07-28T01:55:54.042839" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.043726" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.043448" 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-07-28T01:55:54.051958" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.051635" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.057568" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.058135" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.058245" 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-07-28T01:55:54.052128" elapsed="0.006142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.058748" 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-07-28T01:55:54.058430" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.061565" 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-07-28T01:55:54.058976" elapsed="0.002643"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.063651" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.061763" elapsed="0.001991"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.061741" elapsed="0.002039"/>
</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-07-28T01:55:54.063923" 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-07-28T01:55:54.064183" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.064013" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.063997" elapsed="0.000263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.064292" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:54.066080" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.066126" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.051283" elapsed="0.014866"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.068502" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.066750" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.066732" elapsed="0.001838"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.069156" 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-07-28T01:55:54.068717" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.070787" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.069494" elapsed="0.001404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.071068" elapsed="0.000107"/>
</return>
<msg time="2026-07-28T01:55:54.071655" 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-07-28T01:55:54.066401" elapsed="0.005319"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.072236" elapsed="0.001400"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.050696" elapsed="0.023224"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.085596" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.085196" elapsed="0.000431"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.095231" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.100255" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.101021" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.085791" elapsed="0.015318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.102768" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.101600" elapsed="0.001298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.109611" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.103234" elapsed="0.007113"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.112302" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.110454" elapsed="0.001909"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.110423" elapsed="0.001964"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.136849" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.136913" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.112599" elapsed="0.024340"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.139071" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.137080" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.137045" elapsed="0.002123"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.139209" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:55:54.139458" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.139531" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.084732" elapsed="0.054823"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.141889" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.140252" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.140234" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.142666" 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-07-28T01:55:54.142125" elapsed="0.000570"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.143288" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.142917" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.143365" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:54.143573" 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-07-28T01:55:54.139860" 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-07-28T01:55:54.143767" 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-07-28T01:55:54.083882" elapsed="0.060391"/>
</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-07-28T01:55:54.032047" elapsed="0.112292"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.024956" elapsed="0.119547"/>
</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-07-28T01:55:54.156124" 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-07-28T01:55:54.156355" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.155912" elapsed="0.000473"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.157130" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3692930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.156601" elapsed="0.000558"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.157641" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.157322" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.158105" 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-07-28T01:55:54.157826" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.158584" 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-07-28T01:55:54.158290" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.159692" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:54.158769" elapsed="0.000954"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.160260" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.159901" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.160899" 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-07-28T01:55:54.160566" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.161429" 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-07-28T01:55:54.161098" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.161967" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.161648" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.162515" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:54.162168" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.163091" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3692930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.162730" 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-07-28T01:55:54.155495" elapsed="0.007702"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.163843" 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-07-28T01:55:54.163356" elapsed="0.000518"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.164290" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.164033" 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-07-28T01:55:54.172757" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.172365" elapsed="0.000423"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.178611" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.179411" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.179551" 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-07-28T01:55:54.172934" elapsed="0.006644"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.180064" 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-07-28T01:55:54.179776" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.182789" 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-07-28T01:55:54.180268" elapsed="0.002577"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.185412" elapsed="0.000084"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.183018" elapsed="0.002544"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.182914" elapsed="0.002686"/>
</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-07-28T01:55:54.185852" 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-07-28T01:55:54.186205" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.185996" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.185971" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.186362" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:54.188943" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.189011" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.172012" elapsed="0.017034"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.192416" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.190005" elapsed="0.002473"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.189978" elapsed="0.002524"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.193142" 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-07-28T01:55:54.192667" elapsed="0.000502"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.193730" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.193346" elapsed="0.000412"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.193808" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:54.193994" 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-07-28T01:55:54.189430" elapsed="0.004589"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.194182" elapsed="0.000468"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.171276" elapsed="0.023441"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.202885" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.202537" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.210979" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.216129" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.217179" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.203065" elapsed="0.014189"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.218533" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.217789" elapsed="0.000858"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.224708" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.218984" elapsed="0.006408"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.227457" elapsed="0.000033"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.225519" elapsed="0.002012"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.225485" elapsed="0.002071"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.250747" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.250813" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.227760" elapsed="0.023080"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.253036" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.250989" elapsed="0.002111"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.250952" elapsed="0.002176"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.253170" elapsed="0.000046"/>
</return>
<msg time="2026-07-28T01:55:54.253418" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.253482" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.202102" elapsed="0.051407"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.255855" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.254242" elapsed="0.001659"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.254223" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.256630" 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-07-28T01:55:54.256087" elapsed="0.000571"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.257231" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.256825" elapsed="0.000433"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.257308" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:54.257509" 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-07-28T01:55:54.253848" elapsed="0.003688"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.257699" 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-07-28T01:55:54.201395" elapsed="0.056796"/>
</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-07-28T01:55:54.151975" elapsed="0.106279"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.144882" elapsed="0.113508"/>
</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-07-28T01:55:54.269915" 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-07-28T01:55:54.270108" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.269750" elapsed="0.000388"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.270824" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359b20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.270311" elapsed="0.000541"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.271313" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.271015" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.271792" 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-07-28T01:55:54.271514" elapsed="0.000304"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.272250" 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-07-28T01:55:54.271973" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.273318" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:54.272430" elapsed="0.000920"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.273902" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.273545" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.274529" 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-07-28T01:55:54.274183" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.275059" 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-07-28T01:55:54.274729" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.275597" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.275262" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.276122" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:54.275797" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.276669" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359b20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.276324" 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-07-28T01:55:54.269371" elapsed="0.007450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.277386" 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-07-28T01:55:54.276977" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.277845" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.277594" 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-07-28T01:55:54.286558" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.286176" elapsed="0.000411"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.292404" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.293155" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.293330" 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-07-28T01:55:54.286733" elapsed="0.006636"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.294088" 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-07-28T01:55:54.293670" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.298201" 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-07-28T01:55:54.294371" elapsed="0.003910"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.301448" elapsed="0.000086"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.298530" elapsed="0.003068"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.298486" elapsed="0.003151"/>
</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-07-28T01:55:54.301891" 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-07-28T01:55:54.302213" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.302029" elapsed="0.000237"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.302005" elapsed="0.000283"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.302320" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:54.304020" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.304066" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.285824" elapsed="0.018265"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.306405" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.304749" elapsed="0.001702"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.304730" elapsed="0.001760"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.307120" 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-07-28T01:55:54.306650" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.307714" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.307326" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.307789" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:55:54.307981" 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-07-28T01:55:54.304363" 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-07-28T01:55:54.308183" elapsed="0.000448"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.285115" elapsed="0.023584"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.317481" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.317015" elapsed="0.000502"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.326147" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.330952" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.331789" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.317685" elapsed="0.014172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.333092" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.332326" elapsed="0.000877"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.338145" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.333648" elapsed="0.005211"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.340827" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.338957" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.338929" elapsed="0.001983"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.362073" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.362139" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.341082" elapsed="0.021086"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.364329" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.362321" elapsed="0.002072"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.362285" elapsed="0.002137"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.364479" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:55:54.364741" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.364785" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.316562" elapsed="0.048246"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.367260" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.365537" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.365517" elapsed="0.001824"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.368029" 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-07-28T01:55:54.367525" elapsed="0.000532"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.368623" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.368233" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.368698" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:54.368895" 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-07-28T01:55:54.365118" elapsed="0.003803"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.369083" elapsed="0.000457"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.315645" elapsed="0.053960"/>
</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-07-28T01:55:54.265915" elapsed="0.103752"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.258826" elapsed="0.110992"/>
</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-07-28T01:55:54.381514" 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-07-28T01:55:54.381747" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.381334" elapsed="0.000443"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.382542" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.381991" elapsed="0.000581"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.383036" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.382733" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.383517" 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-07-28T01:55:54.383226" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.383989" 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-07-28T01:55:54.383707" elapsed="0.000308"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.384937" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:54.384167" elapsed="0.000801"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.385505" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.385143" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.386171" 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-07-28T01:55:54.385801" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.386733" 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-07-28T01:55:54.386370" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.387251" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.386937" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.387806" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:54.387460" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.388342" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.388005" 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-07-28T01:55:54.380967" elapsed="0.007476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.389040" 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-07-28T01:55:54.388614" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.389502" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:54.389223" elapsed="0.000343"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.398102" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.397749" elapsed="0.000381"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.404353" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.405363" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.405554" 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-07-28T01:55:54.398285" elapsed="0.007309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.406328" 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-07-28T01:55:54.405875" elapsed="0.000568"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.410325" 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-07-28T01:55:54.406700" elapsed="0.003725"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.413146" elapsed="0.000055"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.410591" elapsed="0.002669"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.410554" elapsed="0.002828"/>
</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-07-28T01:55:54.413646" 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-07-28T01:55:54.413987" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.413780" elapsed="0.000280"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.413757" elapsed="0.000336"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.414138" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:54.416222" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.416267" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.397388" elapsed="0.018903"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.418589" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.416945" elapsed="0.001691"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.416927" elapsed="0.001732"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.419317" 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-07-28T01:55:54.418835" elapsed="0.000509"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.419906" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.419537" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.419982" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:54.420169" 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-07-28T01:55:54.416579" elapsed="0.003615"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.420367" elapsed="0.000445"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.396731" elapsed="0.024148"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.430267" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.429824" elapsed="0.000481"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.440946" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.445312" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.446075" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.430493" elapsed="0.015648"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.447429" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.446623" elapsed="0.000963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.452241" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.447933" elapsed="0.004991"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.454863" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.453032" elapsed="0.001903"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.453003" elapsed="0.001958"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.478645" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.478711" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.455175" elapsed="0.023561"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.480896" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.478895" elapsed="0.002066"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.478855" elapsed="0.002136"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.481032" elapsed="0.000048"/>
</return>
<msg time="2026-07-28T01:55:54.481278" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.481323" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.429320" elapsed="0.052026"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.483724" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.482051" elapsed="0.001719"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.482032" elapsed="0.001760"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.484486" 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-07-28T01:55:54.483956" elapsed="0.000559"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.485038" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.484682" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.485114" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:54.485296" 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-07-28T01:55:54.481660" elapsed="0.003660"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.485499" 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-07-28T01:55:54.428412" elapsed="0.057583"/>
</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-07-28T01:55:54.377458" elapsed="0.108598"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.370220" elapsed="0.115974"/>
</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-07-28T01:55:54.497692" 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-07-28T01:55:54.497880" 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-07-28T01:55:54.497532" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.498565" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035bb50&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.498077" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.499041" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.498751" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.499514" 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-07-28T01:55:54.499222" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.500004" 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-07-28T01:55:54.499729" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.500940" 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-07-28T01:55:54.500185" elapsed="0.000787"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.501503" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.501137" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.502108" 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-07-28T01:55:54.501777" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.502719" 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-07-28T01:55:54.502346" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.503236" 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-07-28T01:55:54.502917" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.503832" 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-07-28T01:55:54.503434" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.504393" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035bb50&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.504036" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:54.497151" elapsed="0.007366"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.505084" 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-07-28T01:55:54.504674" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.505547" 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-07-28T01:55:54.505273" 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-07-28T01:55:54.513837" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.513487" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.520755" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.521657" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.521813" 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-07-28T01:55:54.514005" elapsed="0.007844"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.522538" 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-07-28T01:55:54.522119" elapsed="0.000486"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.526316" 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-07-28T01:55:54.522821" elapsed="0.003566"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.529115" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.526539" elapsed="0.002692"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.526490" elapsed="0.002840"/>
</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-07-28T01:55:54.529524" 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-07-28T01:55:54.529769" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.529620" elapsed="0.000200"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.529603" elapsed="0.000241"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.529876" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:54.531587" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.531631" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.513133" elapsed="0.018564"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.534028" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.532354" elapsed="0.001721"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.532336" elapsed="0.001761"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.534892" 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-07-28T01:55:54.534327" elapsed="0.000592"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.535521" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.535126" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.535597" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:54.535786" 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-07-28T01:55:54.531966" 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-07-28T01:55:54.535990" elapsed="0.000466"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.512498" elapsed="0.024054"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.545092" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.544686" elapsed="0.000441"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.555184" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.558095" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.558601" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.545307" elapsed="0.013334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.559374" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.558948" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.565390" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.559685" elapsed="0.006634"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.569021" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.566457" elapsed="0.002642"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.566419" elapsed="0.002718"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.601021" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.601109" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.569377" elapsed="0.031768"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.604126" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.601298" elapsed="0.002918"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.601259" elapsed="0.002997"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.604313" elapsed="0.000074"/>
</return>
<msg time="2026-07-28T01:55:54.604670" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.604735" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.544123" elapsed="0.060646"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.607461" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.605725" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.605699" elapsed="0.001872"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.608464" 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-07-28T01:55:54.607787" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.609306" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.608727" elapsed="0.000618"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.609414" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:54.609686" 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-07-28T01:55:54.605194" elapsed="0.004529"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.609958" elapsed="0.000636"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.543425" elapsed="0.067258"/>
</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-07-28T01:55:54.493621" elapsed="0.117160"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.486581" elapsed="0.124375"/>
</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-07-28T01:55:54.626923" 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-07-28T01:55:54.627156" 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-07-28T01:55:54.626705" elapsed="0.000491"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.627992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b030a3e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.627429" elapsed="0.000601"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.628703" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.628266" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.629395" 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-07-28T01:55:54.628982" elapsed="0.000449"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.630042" 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-07-28T01:55:54.629656" elapsed="0.000422"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.631322" 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-07-28T01:55:54.630304" elapsed="0.001063"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.632129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.631630" elapsed="0.000559"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.632968" 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-07-28T01:55:54.632508" elapsed="0.000536"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.633810" 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-07-28T01:55:54.633263" elapsed="0.000608"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.634566" 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-07-28T01:55:54.634101" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.635302" 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-07-28T01:55:54.634836" elapsed="0.000533"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.636073" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b030a3e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.635595" elapsed="0.000540"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:54.626173" elapsed="0.010044"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.637066" 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-07-28T01:55:54.636457" elapsed="0.000654"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.637718" 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-07-28T01:55:54.637328" elapsed="0.000488"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.649264" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.648785" elapsed="0.000520"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.656130" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.657048" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.657211" 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-07-28T01:55:54.649510" elapsed="0.007739"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.657959" 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-07-28T01:55:54.657523" elapsed="0.000505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.661706" 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-07-28T01:55:54.658235" elapsed="0.003568"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.664451" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.661922" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.661887" 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-07-28T01:55:54.664895" 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-07-28T01:55:54.665240" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.665027" elapsed="0.000287"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.665003" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.665397" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:54.667851" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.667914" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.648336" elapsed="0.019610"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.671105" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.668797" elapsed="0.002374"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.668771" elapsed="0.002432"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.672056" 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-07-28T01:55:54.671421" elapsed="0.000672"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.672799" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.672323" elapsed="0.000509"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.672899" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:55:54.673166" 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-07-28T01:55:54.668284" elapsed="0.004918"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.673436" elapsed="0.000654"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.647461" elapsed="0.026736"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.685407" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.684971" elapsed="0.000473"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.694248" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.696883" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.697333" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.685662" elapsed="0.011709"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.698111" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.697687" elapsed="0.000502"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.706341" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.698544" elapsed="0.009178"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.710262" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.707860" elapsed="0.002460"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.707823" elapsed="0.002522"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.739180" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.739262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.710594" elapsed="0.028703"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.742212" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.739451" elapsed="0.002845"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.739410" elapsed="0.002926"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.742392" elapsed="0.000072"/>
</return>
<msg time="2026-07-28T01:55:54.742740" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.742819" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.684421" elapsed="0.058460"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.746051" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.743798" elapsed="0.002341"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.743773" elapsed="0.002396"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.747128" 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-07-28T01:55:54.746384" elapsed="0.000782"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.747928" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.747406" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.748037" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:55:54.748297" 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-07-28T01:55:54.743266" elapsed="0.005081"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.748598" elapsed="0.000601"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.683497" elapsed="0.065797"/>
</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-07-28T01:55:54.621368" elapsed="0.128018"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.611423" elapsed="0.138185"/>
</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-07-28T01:55:54.765578" 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-07-28T01:55:54.765826" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:54.765362" elapsed="0.000508"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.766773" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.766122" elapsed="0.000690"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.767574" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.767042" elapsed="0.000573"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.768250" 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-07-28T01:55:54.767847" elapsed="0.000439"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.768866" 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-07-28T01:55:54.768499" elapsed="0.000404"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.770045" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:54.769119" elapsed="0.000969"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.770805" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.770329" elapsed="0.000537"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.771735" 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-07-28T01:55:54.771205" elapsed="0.000590"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.772538" 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-07-28T01:55:54.772031" elapsed="0.000567"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.773267" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:54.772822" elapsed="0.000509"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.774032" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:54.773563" elapsed="0.000535"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.774826" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a2110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.774329" 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-07-28T01:55:54.764870" elapsed="0.010095"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.775642" 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-07-28T01:55:54.775142" elapsed="0.000542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.776284" level="INFO">&lt;?xml version="1.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-07-28T01:55:54.775916" elapsed="0.000447"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.788024" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.787367" elapsed="0.000712"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.793935" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.794887" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.795067" 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-07-28T01:55:54.788272" elapsed="0.006833"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.795794" 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-07-28T01:55:54.795343" elapsed="0.000516"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.799447" 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-07-28T01:55:54.796061" elapsed="0.003492"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.802121" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.799685" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.799649" elapsed="0.002644"/>
</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-07-28T01:55:54.802542" 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-07-28T01:55:54.802972" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.802767" elapsed="0.000292"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.802664" elapsed="0.000429"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.803140" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:54.805652" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.805735" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.786899" elapsed="0.018871"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.808951" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.806657" elapsed="0.002359"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.806632" elapsed="0.002416"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.809968" 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-07-28T01:55:54.809284" elapsed="0.000723"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.810751" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.810237" elapsed="0.000551"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.810856" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:55:54.811131" 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-07-28T01:55:54.806127" elapsed="0.005041"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.811401" elapsed="0.000669"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.786040" elapsed="0.026126"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.823656" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.823178" elapsed="0.000516"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.833420" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.835395" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.835779" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.823892" elapsed="0.011916"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.836559" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.836040" elapsed="0.000569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.844595" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.836801" elapsed="0.008895"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.848374" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.845818" elapsed="0.002634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.845781" elapsed="0.002731"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.880658" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:54.880777" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.848752" elapsed="0.032067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:54.884029" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.881035" elapsed="0.003088"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.880985" elapsed="0.003183"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:54.884229" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:55:54.884592" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:54.884663" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.822617" elapsed="0.062083"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.888131" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.885748" elapsed="0.002446"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.885720" elapsed="0.002506"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.889320" 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-07-28T01:55:54.888482" elapsed="0.000881"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.890160" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.889628" elapsed="0.000573"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.890277" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:55:54.890553" 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-07-28T01:55:54.885156" elapsed="0.005433"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.890833" elapsed="0.000670"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.821628" elapsed="0.069969"/>
</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-07-28T01:55:54.760090" elapsed="0.131611"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.750090" elapsed="0.141786"/>
</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-07-28T01:55:54.907701" 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-07-28T01:55:54.907980" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:54.907446" elapsed="0.000578"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:54.908937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:54.908271" elapsed="0.000708"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.909700" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:54.909251" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.910400" 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-07-28T01:55:54.909984" elapsed="0.000454"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:54.911105" 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-07-28T01:55:54.910687" elapsed="0.000458"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:54.912319" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:54.911379" elapsed="0.000985"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.913191" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.912637" elapsed="0.000620"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.914129" 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-07-28T01:55:54.913620" elapsed="0.000577"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.914981" 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-07-28T01:55:54.914441" elapsed="0.000602"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.915745" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:54.915271" elapsed="0.000544"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.916575" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:54.916062" elapsed="0.000582"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.917307" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:54.916872" elapsed="0.000482"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:54.906882" elapsed="0.010533"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.918180" 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-07-28T01:55:54.917650" elapsed="0.000569"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.918971" level="INFO">&lt;?xml version="1.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-07-28T01:55:54.918434" elapsed="0.000618"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.930610" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.930140" elapsed="0.000508"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.936153" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.937408" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:54.937722" 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-07-28T01:55:54.930820" elapsed="0.006977"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.938817" 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-07-28T01:55:54.938165" elapsed="0.000755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.944924" 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-07-28T01:55:54.939256" elapsed="0.005786"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:54.947601" elapsed="0.000054"/>
</return>
<status status="PASS" start="2026-07-28T01:55:54.945230" elapsed="0.002470"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.945179" elapsed="0.002549"/>
</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-07-28T01:55:54.947889" 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-07-28T01:55:54.948120" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:54.947982" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:54.947965" elapsed="0.000305"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.948304" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:54.950046" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:54.950092" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:54.929668" elapsed="0.020447"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.952481" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.950789" elapsed="0.001750"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.950770" elapsed="0.001792"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.953178" 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-07-28T01:55:54.952721" elapsed="0.000483"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.953790" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:54.953368" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:54.953867" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:54.954049" 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-07-28T01:55:54.950398" elapsed="0.003677"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:54.954235" elapsed="0.000449"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.928670" elapsed="0.026080"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.962959" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:54.962623" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:54.972835" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:54.975662" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:54.976137" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:54.963125" elapsed="0.013052"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.976911" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:54.976463" elapsed="0.000517"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:54.983172" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:54.977191" elapsed="0.006975"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:54.987177" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:54.984303" elapsed="0.002934"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:54.984267" elapsed="0.002996"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.008381" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.008438" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:54.987428" elapsed="0.021048"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.010607" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.008595" elapsed="0.002073"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.008564" elapsed="0.002131"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.010734" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:55.010963" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.011008" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:54.962201" elapsed="0.048830"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.013365" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.011691" elapsed="0.001729"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.011672" elapsed="0.001770"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.014123" 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-07-28T01:55:55.013633" elapsed="0.000518"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.014751" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.014345" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.014842" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:55.015025" 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-07-28T01:55:55.011292" elapsed="0.003758"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.015233" elapsed="0.000457"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:54.961491" elapsed="0.054265"/>
</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-07-28T01:55:54.902017" elapsed="0.113802"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:54.892332" elapsed="0.123630"/>
</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-07-28T01:55:55.027613" 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-07-28T01:55:55.027802" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.027438" elapsed="0.000394"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.028445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bfb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.027996" elapsed="0.000508"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.028969" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.028663" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.029437" 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-07-28T01:55:55.029152" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.029983" 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-07-28T01:55:55.029651" elapsed="0.000358"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.030857" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.030165" elapsed="0.000724"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.031426" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.031054" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.032078" 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-07-28T01:55:55.031737" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.032647" 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-07-28T01:55:55.032276" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.033175" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.032845" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.033745" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.033387" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.034295" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bfb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.033952" 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-07-28T01:55:55.027076" elapsed="0.007321"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.035048" 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-07-28T01:55:55.034570" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.035515" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.035249" 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-07-28T01:55:55.043864" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.043537" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.048901" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.049623" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.049748" 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-07-28T01:55:55.044041" elapsed="0.005733"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.050238" 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-07-28T01:55:55.049949" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.054104" 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-07-28T01:55:55.050434" elapsed="0.003753"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.057097" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.054307" elapsed="0.002902"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.054272" elapsed="0.002974"/>
</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-07-28T01:55:55.057484" elapsed="0.000046"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.057826" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.057631" elapsed="0.000338"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.057608" elapsed="0.000399"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.058054" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:55.060545" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.060592" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.043177" elapsed="0.017438"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.062948" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.061219" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.061201" elapsed="0.001828"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.063672" 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-07-28T01:55:55.063216" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.064232" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.063862" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.064307" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:55.064523" 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-07-28T01:55:55.060871" 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-07-28T01:55:55.064711" 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-07-28T01:55:55.042535" elapsed="0.022658"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.073293" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.072973" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.081411" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.083317" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.083725" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.073460" elapsed="0.010295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.084445" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.083961" elapsed="0.000641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.093037" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.084921" elapsed="0.008816"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.095687" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.093826" elapsed="0.001914"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.093801" elapsed="0.001963"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.115580" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.115641" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.095942" elapsed="0.019724"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.117852" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.115833" elapsed="0.002080"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.115769" elapsed="0.002171"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.117978" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:55.118218" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.118262" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.072585" elapsed="0.045700"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.120615" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.118966" elapsed="0.001705"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.118938" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.121341" 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-07-28T01:55:55.120854" elapsed="0.000514"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.121931" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.121562" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.122006" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:55.122188" 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-07-28T01:55:55.118584" elapsed="0.003629"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.122386" elapsed="0.000455"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:55.071906" elapsed="0.050999"/>
</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-07-28T01:55:55.023519" elapsed="0.099449"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.016324" elapsed="0.106775"/>
</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-07-28T01:55:55.134727" 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-07-28T01:55:55.134921" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.134570" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.135608" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063d580&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.135117" elapsed="0.000519"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.136134" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.135803" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.136603" 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-07-28T01:55:55.136313" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.137044" 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-07-28T01:55:55.136777" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.138030" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.137220" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.138590" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.138232" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.139186" 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-07-28T01:55:55.138858" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.139733" 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-07-28T01:55:55.139384" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.140283" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.139927" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.140822" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.140501" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.141345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063d580&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.141020" 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-07-28T01:55:55.134182" elapsed="0.007263"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.142017" 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-07-28T01:55:55.141616" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.142465" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.142200" 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-07-28T01:55:55.150654" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.150314" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.158372" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.159293" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.159460" 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-07-28T01:55:55.150816" elapsed="0.008702"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.160185" 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-07-28T01:55:55.159784" elapsed="0.000468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.164178" 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-07-28T01:55:55.160530" elapsed="0.003725"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.167090" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.164371" elapsed="0.002905"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.164338" elapsed="0.002981"/>
</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-07-28T01:55:55.167574" 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-07-28T01:55:55.167913" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.167713" elapsed="0.000276"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.167689" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.168070" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:55.170581" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.170649" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.149983" elapsed="0.020700"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.173725" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.171553" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.171526" elapsed="0.002267"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.174368" 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-07-28T01:55:55.173944" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.174930" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.174575" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.175005" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.175184" 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-07-28T01:55:55.171028" elapsed="0.004180"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.175368" 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-07-28T01:55:55.149351" elapsed="0.026502"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.183857" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.183534" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.191549" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.194125" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.194554" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.184014" elapsed="0.010579"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.195213" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.194848" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.201083" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.195515" elapsed="0.006506"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.204803" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.202135" elapsed="0.002738"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.202107" elapsed="0.002797"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.226144" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.226192" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.205139" elapsed="0.021076"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.228124" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.226297" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.226278" elapsed="0.001927"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.228240" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:55.228438" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.228500" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.183142" elapsed="0.045384"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.230943" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.229084" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.229065" elapsed="0.001972"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.231896" 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-07-28T01:55:55.231245" elapsed="0.000690"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.232691" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.232168" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.232798" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:55.233050" 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-07-28T01:55:55.228748" elapsed="0.004337"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.233314" elapsed="0.000622"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:55.182510" elapsed="0.051516"/>
</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-07-28T01:55:55.130753" elapsed="0.103352"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.123480" elapsed="0.110776"/>
</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-07-28T01:55:55.245343" 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-07-28T01:55:55.245536" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.245194" elapsed="0.000379"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.246157" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bf60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.245729" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.246646" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.246342" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.247100" 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-07-28T01:55:55.246827" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.247566" 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-07-28T01:55:55.247278" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.248446" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.247744" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.248997" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.248658" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.249629" 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-07-28T01:55:55.249242" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.250170" 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-07-28T01:55:55.249835" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.250708" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.250366" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.251230" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.250908" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.251773" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bf60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.251428" 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-07-28T01:55:55.244859" elapsed="0.007011"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.252491" 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-07-28T01:55:55.252024" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.252922" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.252677" 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-07-28T01:55:55.261022" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.260709" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.266386" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.267120" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.267298" 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-07-28T01:55:55.261180" elapsed="0.006163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.267967" 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-07-28T01:55:55.267609" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.271618" 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-07-28T01:55:55.268232" elapsed="0.003461"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.274333" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.271790" elapsed="0.002652"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.271763" elapsed="0.002726"/>
</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-07-28T01:55:55.274641" 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-07-28T01:55:55.274871" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.274734" elapsed="0.000189"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.274718" elapsed="0.000229"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.274979" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:55.276629" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.276675" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.260370" elapsed="0.016328"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.278890" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.277250" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.277233" elapsed="0.001724"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.279532" 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-07-28T01:55:55.279106" elapsed="0.000453"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.280081" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.279721" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.280157" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.280338" 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-07-28T01:55:55.276911" elapsed="0.003452"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.280539" 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-07-28T01:55:55.259804" elapsed="0.021193"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.288932" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.288630" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.295653" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.297422" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.297746" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.289091" elapsed="0.008682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.298247" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.297934" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.303687" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.298440" elapsed="0.006185"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.307310" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.304738" elapsed="0.002623"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.304708" elapsed="0.002677"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.327926" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.327978" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.307575" elapsed="0.020427"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.383399" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.328095" elapsed="0.055415"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.328072" elapsed="0.055467"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.383583" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:55:55.383842" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.383900" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.288227" elapsed="0.095697"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.386207" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.384579" elapsed="0.001673"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.384559" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.386939" 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-07-28T01:55:55.386442" elapsed="0.000524"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.387558" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.387128" elapsed="0.000456"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.387633" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.387825" 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-07-28T01:55:55.384184" elapsed="0.003666"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.388006" 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-07-28T01:55:55.287600" elapsed="0.100910"/>
</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-07-28T01:55:55.241584" elapsed="0.146996"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.234612" elapsed="0.154091"/>
</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-07-28T01:55:55.399851" 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-07-28T01:55:55.400022" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.399696" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.400679" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4e00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.400211" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.401142" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.400859" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.401630" 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-07-28T01:55:55.401331" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.402086" 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-07-28T01:55:55.401805" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.403063" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.402272" elapsed="0.000822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.403645" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.403253" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.404399" 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-07-28T01:55:55.403915" elapsed="0.000526"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.404962" 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-07-28T01:55:55.404622" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.405495" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.405155" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.406022" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.405703" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.406570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a4e00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.406226" 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-07-28T01:55:55.399337" elapsed="0.007329"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.407217" 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-07-28T01:55:55.406823" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.407681" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.407410" 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-07-28T01:55:55.415641" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.415296" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.421133" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.421732" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.421855" 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-07-28T01:55:55.415797" elapsed="0.006084"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.422310" 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-07-28T01:55:55.422042" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.424955" 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-07-28T01:55:55.422524" elapsed="0.002483"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.426885" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.425088" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.425058" elapsed="0.001952"/>
</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-07-28T01:55:55.427166" 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-07-28T01:55:55.427395" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.427259" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.427242" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.427520" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:55.429206" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.429251" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.414970" elapsed="0.014303"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.431484" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.429855" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.429837" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.432137" 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-07-28T01:55:55.431726" elapsed="0.000437"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.432705" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.432325" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.432781" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:55.432958" 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-07-28T01:55:55.429514" 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-07-28T01:55:55.433139" 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-07-28T01:55:55.414389" elapsed="0.019241"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.441830" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.441519" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.447477" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.449517" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.449827" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.441985" elapsed="0.007868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.450291" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.450031" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.454225" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.450506" elapsed="0.004417"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.456810" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.454996" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.454976" elapsed="0.001917"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.477678" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.477726" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.457034" elapsed="0.020715"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.479586" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.477830" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.477810" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.479701" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:55.479896" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.479939" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.441118" elapsed="0.038844"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.482118" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.480541" elapsed="0.001622"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.480522" elapsed="0.001666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.482758" 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-07-28T01:55:55.482337" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.483299" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.482946" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.483373" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.483569" 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-07-28T01:55:55.480175" 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-07-28T01:55:55.483751" 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-07-28T01:55:55.440493" elapsed="0.043706"/>
</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-07-28T01:55:55.395995" elapsed="0.088262"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.389024" elapsed="0.095408"/>
</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-07-28T01:55:55.495310" 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-07-28T01:55:55.495457" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.495171" elapsed="0.000328"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.496044" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063d6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.495653" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.496553" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.496225" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.497003" 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-07-28T01:55:55.496733" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.497448" 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-07-28T01:55:55.497180" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.498196" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.497643" elapsed="0.000583"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.498730" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.498383" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.499294" 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-07-28T01:55:55.498969" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.499831" 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-07-28T01:55:55.499505" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.500334" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.500024" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.500917" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.500591" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.501434" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063d6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.501113" 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-07-28T01:55:55.494839" elapsed="0.006710"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.502081" 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-07-28T01:55:55.501699" elapsed="0.000413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.502522" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.502263" 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-07-28T01:55:55.510520" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.510184" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.515132" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.515692" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.515797" 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-07-28T01:55:55.510682" elapsed="0.005141"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.516252" 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-07-28T01:55:55.515988" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.519608" 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-07-28T01:55:55.516443" elapsed="0.003241"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.522311" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.519786" elapsed="0.002625"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.519758" elapsed="0.002688"/>
</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-07-28T01:55:55.522677" 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-07-28T01:55:55.522998" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.522804" elapsed="0.000321"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.522782" elapsed="0.000380"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.523217" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:55.525548" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.525594" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.509860" elapsed="0.015756"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.527788" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.526166" elapsed="0.001669"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.526149" elapsed="0.001709"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.528413" 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-07-28T01:55:55.528007" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.528995" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.528623" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.529074" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.529259" 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-07-28T01:55:55.525832" elapsed="0.003453"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.529446" 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-07-28T01:55:55.509253" elapsed="0.020682"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.537838" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.537529" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.546777" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.549202" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.549627" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.537995" elapsed="0.011670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.550252" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.549890" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.555966" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.550544" elapsed="0.006360"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.559227" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.557009" elapsed="0.002269"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.556980" elapsed="0.002321"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.579893" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.579942" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.559444" elapsed="0.020521"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.582107" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.580046" elapsed="0.002121"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.580026" elapsed="0.002166"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.582225" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:55.582428" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.582492" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.537133" elapsed="0.045383"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.584739" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.583092" elapsed="0.001693"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.583073" elapsed="0.001733"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.585380" 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-07-28T01:55:55.584957" elapsed="0.000451"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.586007" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.585619" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.586085" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:55.586283" 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-07-28T01:55:55.582740" elapsed="0.003569"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.586491" 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-07-28T01:55:55.536491" elapsed="0.050490"/>
</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-07-28T01:55:55.491539" elapsed="0.095504"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.484635" elapsed="0.102535"/>
</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-07-28T01:55:55.598510" 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-07-28T01:55:55.598667" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.598350" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.599297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.598853" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.599791" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.599502" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.600246" 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-07-28T01:55:55.599972" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.600714" 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-07-28T01:55:55.600422" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.601691" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.600897" elapsed="0.000835"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.602276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.601901" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.602890" 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-07-28T01:55:55.602561" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.603443" 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-07-28T01:55:55.603089" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.603975" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:55.603661" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.604513" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:55.604175" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.605042" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.604711" 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-07-28T01:55:55.598012" elapsed="0.007128"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.605706" 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-07-28T01:55:55.605291" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.606172" level="INFO">&lt;?xml version="1.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-07-28T01:55:55.605922" elapsed="0.000313"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.614210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.613893" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.619715" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.620242" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.620347" 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-07-28T01:55:55.614371" elapsed="0.006003"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.620816" 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-07-28T01:55:55.620555" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.624011" 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-07-28T01:55:55.621005" elapsed="0.003079"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.626704" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.624182" elapsed="0.002619"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.624155" elapsed="0.002682"/>
</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-07-28T01:55:55.627035" 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-07-28T01:55:55.627348" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.627161" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.627138" elapsed="0.000312"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.627518" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:55:55.629824" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.629887" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.613526" elapsed="0.016393"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.632539" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.630777" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.630752" elapsed="0.001854"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.633148" 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-07-28T01:55:55.632750" elapsed="0.000427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.633710" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.633340" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.633785" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:55.633962" 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-07-28T01:55:55.630291" elapsed="0.003696"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.634158" 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-07-28T01:55:55.612929" elapsed="0.021710"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.642392" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.642081" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.651691" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.654167" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.654621" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.642563" elapsed="0.012096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.655254" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.654886" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.660833" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.655545" elapsed="0.006207"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.664088" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.661853" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.661827" elapsed="0.002332"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.682757" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.682805" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.664302" elapsed="0.018526"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.686269" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.682908" elapsed="0.003421"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.682889" elapsed="0.003463"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.686385" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.686605" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.686688" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.641707" elapsed="0.045006"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.688861" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.687258" elapsed="0.001647"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.687240" elapsed="0.001687"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.689491" 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-07-28T01:55:55.689075" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.690032" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.689681" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.690108" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.690286" 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-07-28T01:55:55.686929" 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-07-28T01:55:55.690482" 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-07-28T01:55:55.641083" elapsed="0.049873"/>
</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-07-28T01:55:55.594660" elapsed="0.096353"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.587530" elapsed="0.103595"/>
</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-07-28T01:55:55.702135" 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-07-28T01:55:55.702302" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.701983" elapsed="0.000348"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.702973" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5ad0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.702509" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.703445" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.703156" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.703911" 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-07-28T01:55:55.703642" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.704351" 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-07-28T01:55:55.704086" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.705196" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:55.704547" elapsed="0.000680"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.705747" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.705386" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.706325" 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-07-28T01:55:55.705998" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.706859" 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-07-28T01:55:55.706535" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.707389" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.707078" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.707919" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:55.707600" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.708436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5ad0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.708114" 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-07-28T01:55:55.701646" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.709088" 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-07-28T01:55:55.708701" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.709530" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.709272" 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-07-28T01:55:55.717439" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.717133" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.722606" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.723166" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.723273" 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-07-28T01:55:55.717617" elapsed="0.005681"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.723736" 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-07-28T01:55:55.723477" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.726283" 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-07-28T01:55:55.723927" elapsed="0.002407"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.728241" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.726408" elapsed="0.001950"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.726387" elapsed="0.002005"/>
</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-07-28T01:55:55.728615" 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-07-28T01:55:55.728981" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.728790" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.728766" elapsed="0.000321"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.729132" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:55.731430" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.731512" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.716817" elapsed="0.014729"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.734543" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.732302" elapsed="0.002305"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.732277" elapsed="0.002360"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.735443" 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-07-28T01:55:55.734838" elapsed="0.000664"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.736233" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.735729" elapsed="0.000536"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.736323" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:55.736519" 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-07-28T01:55:55.731841" 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-07-28T01:55:55.736702" 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-07-28T01:55:55.716233" elapsed="0.020918"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.744918" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.744624" elapsed="0.000320"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.751200" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.753340" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.753753" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.745072" elapsed="0.008718"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.754370" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.754014" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.760044" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.754660" elapsed="0.006142"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.762656" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.760874" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.760855" elapsed="0.001871"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.781923" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.781972" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.762879" elapsed="0.019116"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.783988" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.782074" elapsed="0.001983"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.782056" elapsed="0.002026"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.784116" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:55.784316" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.784360" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.744234" elapsed="0.040149"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.786607" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.784963" elapsed="0.001689"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.784945" elapsed="0.001729"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.787238" 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-07-28T01:55:55.786822" elapsed="0.000443"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.787818" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.787438" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.787937" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:55.788120" 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-07-28T01:55:55.784617" 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-07-28T01:55:55.788318" 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-07-28T01:55:55.743618" elapsed="0.045188"/>
</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-07-28T01:55:55.698303" elapsed="0.090561"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.691394" elapsed="0.097589"/>
</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-07-28T01:55:55.800203" 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-07-28T01:55:55.800341" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.800063" elapsed="0.000307"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.800954" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cb80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.800551" elapsed="0.000430"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.801430" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.801134" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.801906" 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-07-28T01:55:55.801624" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.802350" 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-07-28T01:55:55.802082" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.803170" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:55.802540" elapsed="0.000660"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.803720" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.803359" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.804416" 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-07-28T01:55:55.804002" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.804972" 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-07-28T01:55:55.804631" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.805504" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.805164" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.806028" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:55.805700" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.806570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cb80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.806223" 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-07-28T01:55:55.799706" elapsed="0.006961"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.807225" 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-07-28T01:55:55.806816" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.807715" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.807438" 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-07-28T01:55:55.816093" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.815760" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.821913" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.822442" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.822567" 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-07-28T01:55:55.816284" elapsed="0.006308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.823021" 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-07-28T01:55:55.822753" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.825905" 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-07-28T01:55:55.823216" elapsed="0.002763"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.828655" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.826076" elapsed="0.002687"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.826049" 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-07-28T01:55:55.828999" 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-07-28T01:55:55.829373" elapsed="0.000072"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.829125" elapsed="0.000391"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.829102" elapsed="0.000448"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.829597" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:55.831972" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.832035" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.815417" elapsed="0.016651"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.834634" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.832920" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.832895" elapsed="0.001806"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.835268" 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-07-28T01:55:55.834850" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.835838" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.835487" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.835926" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.836106" 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-07-28T01:55:55.832419" 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-07-28T01:55:55.836289" 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-07-28T01:55:55.814825" elapsed="0.021956"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.844712" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.844355" elapsed="0.000384"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.853151" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.855651" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.856054" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.844868" elapsed="0.011223"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.856766" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.856319" elapsed="0.000514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.862356" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.857039" elapsed="0.006224"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.865759" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.863364" elapsed="0.002444"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.863337" elapsed="0.002493"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.885845" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.885893" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.865970" elapsed="0.019946"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.887822" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.885997" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.885978" elapsed="0.001925"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.887960" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:55:55.888170" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.888213" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.843979" elapsed="0.044257"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.890529" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.888833" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.888814" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.891190" 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-07-28T01:55:55.890758" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.891774" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.891384" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.891850" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.892041" 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-07-28T01:55:55.888486" elapsed="0.003581"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.892247" 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-07-28T01:55:55.843328" elapsed="0.049408"/>
</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-07-28T01:55:55.796412" elapsed="0.096380"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.789312" elapsed="0.103595"/>
</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-07-28T01:55:55.904687" 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-07-28T01:55:55.904870" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:55.904529" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:55.905563" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a610&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:55.905065" elapsed="0.000526"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.906030" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:55.905746" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.906493" 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-07-28T01:55:55.906208" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:55.907068" 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-07-28T01:55:55.906801" elapsed="0.000292"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.907953" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.907245" elapsed="0.000740"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.908518" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.908163" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.909099" 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-07-28T01:55:55.908776" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.909685" 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-07-28T01:55:55.909337" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.910189" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:55.909876" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.910785" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.910445" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.911302" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a610&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:55.910979" 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-07-28T01:55:55.904151" elapsed="0.007248"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.912046" 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-07-28T01:55:55.911565" elapsed="0.000511"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.912489" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:55.912228" 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-07-28T01:55:55.920553" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.920224" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.925897" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.926481" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:55.926588" 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-07-28T01:55:55.920710" elapsed="0.005904"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.927030" 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-07-28T01:55:55.926774" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.929641" 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-07-28T01:55:55.927222" elapsed="0.002472"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:55.932113" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:55:55.929770" elapsed="0.002442"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.929748" elapsed="0.002499"/>
</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-07-28T01:55:55.932448" 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-07-28T01:55:55.932835" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.932644" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:55.932619" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.932983" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:55.935277" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:55.935340" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:55.919905" elapsed="0.015466"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.938390" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.936148" elapsed="0.002287"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.936124" elapsed="0.002336"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.939048" 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-07-28T01:55:55.938635" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.939619" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.939236" elapsed="0.000409"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.939695" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.939874" 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-07-28T01:55:55.935687" elapsed="0.004212"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:55.940057" 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-07-28T01:55:55.919291" elapsed="0.021239"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.948458" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:55.948156" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:55.954335" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:55.956881" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:55.957291" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:55.948627" elapsed="0.008701"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.957965" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:55.957586" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.963307" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:55.958245" elapsed="0.005723"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.965809" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.964041" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.964022" elapsed="0.001858"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:55.983937" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:55.983984" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:55.966034" elapsed="0.017973"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:55.987959" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:55.984086" elapsed="0.003946"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.984067" elapsed="0.003999"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:55.988116" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:55:55.988392" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:55.988449" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:55.947778" elapsed="0.040930"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:55.990962" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:55.989317" elapsed="0.001690"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:55.989298" elapsed="0.001732"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.991618" 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-07-28T01:55:55.991180" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:55.992160" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:55.991807" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:55.992234" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:55.992414" 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-07-28T01:55:55.988960" 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-07-28T01:55:55.992614" 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-07-28T01:55:55.947137" elapsed="0.045934"/>
</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-07-28T01:55:55.900834" elapsed="0.092294"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.893395" elapsed="0.099858"/>
</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-07-28T01:55:56.004809" 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-07-28T01:55:56.004954" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.004666" elapsed="0.000317"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.005573" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06923e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.005134" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.006038" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.005756" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.006721" 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-07-28T01:55:56.006215" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.007171" 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-07-28T01:55:56.006899" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.008034" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:56.007348" elapsed="0.000716"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.008566" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.008222" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.009128" 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-07-28T01:55:56.008808" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.009664" 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-07-28T01:55:56.009320" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.010166" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.009857" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.010734" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:56.010359" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.011248" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06923e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.010931" 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-07-28T01:55:56.004316" elapsed="0.007028"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.011894" 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-07-28T01:55:56.011510" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.012318" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.012075" 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-07-28T01:55:56.020298" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.019994" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.025533" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.026049" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.026151" 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-07-28T01:55:56.020457" elapsed="0.005721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.026666" 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-07-28T01:55:56.026342" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.030060" 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-07-28T01:55:56.026860" elapsed="0.003273"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.032736" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.030236" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.030209" 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-07-28T01:55:56.033108" 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-07-28T01:55:56.033427" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.033238" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.033215" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.033599" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:56.035810" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.035856" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.019677" elapsed="0.016202"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.038025" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.036430" elapsed="0.001640"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.036412" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.038657" 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-07-28T01:55:56.038239" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.039220" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.038870" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.039296" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.039491" 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-07-28T01:55:56.036096" elapsed="0.003422"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.039675" 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-07-28T01:55:56.019091" elapsed="0.021034"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.047865" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.047568" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.055821" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.057593" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.057880" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.048019" elapsed="0.009887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.058321" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.058065" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.062335" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.058525" 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-07-28T01:55:56.064841" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.063075" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.063056" elapsed="0.001855"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.083385" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.083432" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.065050" elapsed="0.018406"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.085338" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.083551" elapsed="0.001843"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.083531" elapsed="0.001887"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.085450" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:55:56.085667" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.085710" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.047179" elapsed="0.038554"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.087902" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.086279" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.086261" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.088551" 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-07-28T01:55:56.088128" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.089092" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.088740" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.089166" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.089345" 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-07-28T01:55:56.085947" elapsed="0.003422"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.089543" 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-07-28T01:55:56.046555" elapsed="0.043437"/>
</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-07-28T01:55:56.001037" elapsed="0.089012"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:55.993723" elapsed="0.096441"/>
</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-07-28T01:55:56.101662" 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-07-28T01:55:56.101805" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:56.101518" elapsed="0.000316"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.102397" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.101984" elapsed="0.000442"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.102913" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.102624" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.103366" 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-07-28T01:55:56.103093" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.103856" 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-07-28T01:55:56.103582" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.104672" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.104031" elapsed="0.000672"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.105189" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.104860" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.105780" 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-07-28T01:55:56.105430" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.106317" 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-07-28T01:55:56.105975" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.106850" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:56.106533" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.107368" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.107049" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.107956" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690ae0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.107612" 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-07-28T01:55:56.101122" elapsed="0.006935"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.108618" 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-07-28T01:55:56.108208" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.109046" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:56.108801" 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-07-28T01:55:56.117101" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.116797" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.121687" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.122206" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.122307" 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-07-28T01:55:56.117256" elapsed="0.005076"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.122764" 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-07-28T01:55:56.122510" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.125873" 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-07-28T01:55:56.122951" elapsed="0.002994"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.128546" elapsed="0.000188"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.126042" elapsed="0.002745"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.126016" elapsed="0.002804"/>
</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-07-28T01:55:56.129018" 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-07-28T01:55:56.129381" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.129189" elapsed="0.000269"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.129165" elapsed="0.000344"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.129555" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:56.131881" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.131947" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.116445" elapsed="0.015534"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.134238" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.132641" elapsed="0.001646"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.132623" elapsed="0.001686"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.134875" 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-07-28T01:55:56.134461" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.135418" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.135063" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.135511" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.135693" 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-07-28T01:55:56.132283" 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-07-28T01:55:56.135889" 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-07-28T01:55:56.115877" elapsed="0.020467"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.144268" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.143951" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.150932" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.153423" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.153835" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.144435" elapsed="0.009438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.154459" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.154096" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.160142" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.154743" elapsed="0.006329"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.163729" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.161185" elapsed="0.002612"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.161152" elapsed="0.002676"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.183974" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.184020" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.164027" elapsed="0.020017"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.185942" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.184124" elapsed="0.001875"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.184105" elapsed="0.001918"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.186056" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.186253" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.186297" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.143574" elapsed="0.042746"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.188508" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.186889" elapsed="0.001668"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.186871" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.189128" 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-07-28T01:55:56.188725" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.189698" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.189322" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.189774" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.189952" 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-07-28T01:55:56.186558" 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-07-28T01:55:56.190134" 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-07-28T01:55:56.142937" elapsed="0.047662"/>
</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-07-28T01:55:56.097681" elapsed="0.092976"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.090483" elapsed="0.100287"/>
</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-07-28T01:55:56.202192" 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-07-28T01:55:56.202450" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.202052" elapsed="0.000449"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.203086" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.202657" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.203563" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.203266" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.204005" 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-07-28T01:55:56.203740" elapsed="0.000291"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.204441" 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-07-28T01:55:56.204178" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.205403" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.204633" elapsed="0.000800"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.205991" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.205610" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.206601" 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-07-28T01:55:56.206252" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.207128" 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-07-28T01:55:56.206800" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.207658" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.207327" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.208173" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.207855" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.208715" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.208369" elapsed="0.000415"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:56.201721" elapsed="0.007122"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.209391" 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-07-28T01:55:56.208996" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.209838" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.209594" 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-07-28T01:55:56.217863" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.217553" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.223073" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.223674" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.223779" 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-07-28T01:55:56.218022" elapsed="0.005782"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.224233" 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-07-28T01:55:56.223972" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.226838" 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-07-28T01:55:56.224423" elapsed="0.002467"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.228742" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.226969" elapsed="0.001905"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.226945" elapsed="0.001959"/>
</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-07-28T01:55:56.229092" 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-07-28T01:55:56.229381" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.229186" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.229170" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.229556" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:56.231844" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.231907" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.217215" elapsed="0.014724"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.235140" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.232756" elapsed="0.002456"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.232731" elapsed="0.002514"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.236108" 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-07-28T01:55:56.235494" elapsed="0.000654"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.236931" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.236386" elapsed="0.000583"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.237042" elapsed="0.000084"/>
</return>
<msg time="2026-07-28T01:55:56.237353" 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-07-28T01:55:56.232258" elapsed="0.005132"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.237650" elapsed="0.000577"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:56.216617" elapsed="0.021677"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.246224" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.245916" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.252584" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.254583" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.255022" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.246384" elapsed="0.008675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.255700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.255299" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.261691" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.255966" elapsed="0.006556"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.264417" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.262611" elapsed="0.001875"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.262586" elapsed="0.001925"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.282786" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.282846" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.264700" elapsed="0.018171"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.287045" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.282997" elapsed="0.004112"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.282965" elapsed="0.004172"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.287177" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:55:56.287410" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.287459" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.245532" elapsed="0.041965"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.289764" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.288131" elapsed="0.001679"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.288112" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.290527" 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-07-28T01:55:56.289991" elapsed="0.000564"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.291079" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.290721" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.291154" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:56.291339" 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-07-28T01:55:56.287761" elapsed="0.003603"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.291543" 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-07-28T01:55:56.244849" elapsed="0.047173"/>
</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-07-28T01:55:56.198407" elapsed="0.093675"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.191134" elapsed="0.101079"/>
</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-07-28T01:55:56.304143" 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-07-28T01:55:56.304345" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.303982" elapsed="0.000393"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.305152" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d38d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.304563" elapsed="0.000618"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.305647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.305335" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.306126" 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-07-28T01:55:56.305851" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.306590" 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-07-28T01:55:56.306301" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.307586" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.306767" elapsed="0.000851"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.308129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.307784" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.308755" 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-07-28T01:55:56.308412" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.309273" 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-07-28T01:55:56.308949" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.309794" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.309478" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.310366" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.310045" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.310896" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d38d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.310577" 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-07-28T01:55:56.303625" elapsed="0.007371"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.311571" 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-07-28T01:55:56.311150" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.311999" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.311755" 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-07-28T01:55:56.320129" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.319812" elapsed="0.000344"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.326146" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.326820" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.326939" 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-07-28T01:55:56.320291" elapsed="0.006675"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.327601" 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-07-28T01:55:56.327167" elapsed="0.000501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.331869" 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-07-28T01:55:56.327878" elapsed="0.004094"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.335701" elapsed="0.000056"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.332125" elapsed="0.003687"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.332082" elapsed="0.003766"/>
</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-07-28T01:55:56.336114" 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-07-28T01:55:56.336432" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.336246" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.336224" elapsed="0.000334"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.336601" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:56.339064" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.339117" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.319491" elapsed="0.019649"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.341478" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.339852" elapsed="0.001677"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.339831" elapsed="0.001721"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.342272" 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-07-28T01:55:56.341747" elapsed="0.000552"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.342842" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.342481" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.342918" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:56.343108" 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-07-28T01:55:56.339444" elapsed="0.003690"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.343296" 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-07-28T01:55:56.318878" elapsed="0.024925"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.351716" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.351381" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.361980" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.364782" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.365281" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.351905" elapsed="0.013418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.366105" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.365660" elapsed="0.000514"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.372090" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.366389" elapsed="0.006408"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.374721" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.372896" elapsed="0.001879"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.372867" elapsed="0.001931"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.392820" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.392880" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.374973" elapsed="0.017932"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.395128" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.393026" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.392996" elapsed="0.002223"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.395260" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:56.395513" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.395559" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.350999" elapsed="0.044583"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.397854" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.396238" elapsed="0.001662"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.396219" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.398590" 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-07-28T01:55:56.398082" elapsed="0.000536"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.399179" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.398812" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.399260" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:56.399444" 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-07-28T01:55:56.395857" elapsed="0.003631"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.399655" 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-07-28T01:55:56.350337" elapsed="0.049800"/>
</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-07-28T01:55:56.300178" elapsed="0.100025"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.292775" elapsed="0.107558"/>
</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-07-28T01:55:56.411844" 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-07-28T01:55:56.412031" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.411681" elapsed="0.000380"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.412742" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035b010&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.412237" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.413211" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.412929" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.413688" 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-07-28T01:55:56.413393" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.414134" 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-07-28T01:55:56.413863" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.415168" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.414310" elapsed="0.000889"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.415731" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.415365" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.416332" 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-07-28T01:55:56.416004" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.416908" 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-07-28T01:55:56.416545" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.417646" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.417112" elapsed="0.000581"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.418186" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.417854" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.418734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b035b010&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.418386" elapsed="0.000391"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:56.411296" elapsed="0.007541"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.419524" 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-07-28T01:55:56.419032" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.419966" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.419716" 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-07-28T01:55:56.428045" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.427714" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.434675" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.435302" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.435433" 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-07-28T01:55:56.428227" elapsed="0.007250"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.435990" 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-07-28T01:55:56.435685" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.438853" 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-07-28T01:55:56.436191" elapsed="0.002714"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.440914" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.439002" elapsed="0.001995"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.438976" elapsed="0.002047"/>
</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-07-28T01:55:56.441177" 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-07-28T01:55:56.441420" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.441282" elapsed="0.000208"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.441265" elapsed="0.000250"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.441548" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:56.443250" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.443297" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.427352" elapsed="0.015968"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.445580" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.443941" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.443924" elapsed="0.001725"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.446265" 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-07-28T01:55:56.445816" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.446836" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.446457" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.446912" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:56.447093" 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-07-28T01:55:56.443582" elapsed="0.003537"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.447328" elapsed="0.000439"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:56.426661" elapsed="0.021174"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.456117" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.455777" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.465155" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.468120" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.468742" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.456282" elapsed="0.012505"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.469913" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.469119" elapsed="0.000866"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.474717" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.470218" elapsed="0.005191"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.477388" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.475524" elapsed="0.001919"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.475495" elapsed="0.001989"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.498258" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.498322" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.477669" elapsed="0.020679"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.500523" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.498499" elapsed="0.002087"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.498446" elapsed="0.002167"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.500651" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:56.500889" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.500936" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.455317" elapsed="0.045643"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.503202" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.501614" elapsed="0.001634"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.501595" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.504093" 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-07-28T01:55:56.503497" elapsed="0.000625"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.504687" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.504292" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.504765" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:56.504949" 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-07-28T01:55:56.501224" elapsed="0.003750"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.505153" elapsed="0.000449"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:56.454619" elapsed="0.051049"/>
</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-07-28T01:55:56.407813" elapsed="0.097917"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.400722" elapsed="0.105137"/>
</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-07-28T01:55:56.517327" 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-07-28T01:55:56.517524" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.517167" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.518188" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d0270&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.517725" elapsed="0.000496"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.518702" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.518384" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.519165" 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-07-28T01:55:56.518892" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.519660" 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-07-28T01:55:56.519359" elapsed="0.000327"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.520712" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.519839" elapsed="0.000914"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.521370" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.520942" elapsed="0.000473"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.522009" 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-07-28T01:55:56.521671" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.522639" 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-07-28T01:55:56.522217" elapsed="0.000466"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.523179" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.522849" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.523713" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.523375" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.524304" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d0270&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.523921" elapsed="0.000425"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:56.516822" elapsed="0.007581"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.524984" 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-07-28T01:55:56.524572" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.525438" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.525180" 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-07-28T01:55:56.533724" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.533368" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.539809" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.540508" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.540621" 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-07-28T01:55:56.533884" elapsed="0.006763"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.541072" 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-07-28T01:55:56.540815" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.543643" 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-07-28T01:55:56.541267" elapsed="0.002429"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.546090" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.543775" elapsed="0.002540"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.543752" 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-07-28T01:55:56.546740" 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-07-28T01:55:56.547251" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.546949" elapsed="0.000414"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.546910" elapsed="0.000507"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.547524" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:56.550143" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.550188" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.533039" elapsed="0.017172"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.552388" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.550774" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.550756" elapsed="0.001701"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.553019" 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-07-28T01:55:56.552617" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.553574" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.553205" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.553650" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.553829" 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-07-28T01:55:56.550425" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.554010" 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-07-28T01:55:56.532434" elapsed="0.022056"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.562476" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.562138" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.570415" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.572251" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.572631" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.562639" elapsed="0.010023"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.573095" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.572831" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.578779" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.573338" elapsed="0.006356"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.582053" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.579801" elapsed="0.002304"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.579771" elapsed="0.002357"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.600636" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.600689" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.582278" elapsed="0.018436"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.604631" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.600813" elapsed="0.003879"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.600789" elapsed="0.003928"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.604752" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:55:56.605022" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.605067" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.561750" elapsed="0.043340"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.607309" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.605713" elapsed="0.001641"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.605695" elapsed="0.001680"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.607993" 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-07-28T01:55:56.607547" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.608554" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.608181" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.608630" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.608811" 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-07-28T01:55:56.605343" 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-07-28T01:55:56.609029" 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-07-28T01:55:56.561083" elapsed="0.048439"/>
</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-07-28T01:55:56.513276" elapsed="0.096305"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.506213" elapsed="0.103494"/>
</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-07-28T01:55:56.620825" 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-07-28T01:55:56.621141" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.620680" elapsed="0.000492"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.621794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359bc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.621327" elapsed="0.000495"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.622281" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.621992" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.622759" 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-07-28T01:55:56.622483" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.623209" 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-07-28T01:55:56.622938" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.624142" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.623387" elapsed="0.000786"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.624695" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.624337" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.625302" 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-07-28T01:55:56.624944" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.625850" 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-07-28T01:55:56.625516" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.626363" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.626047" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.626905" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.626581" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.627427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359bc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.627103" 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-07-28T01:55:56.620331" elapsed="0.007214"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.628083" 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-07-28T01:55:56.627695" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.628530" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.628265" 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-07-28T01:55:56.636622" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.636291" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.641475" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.642032" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.642136" 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-07-28T01:55:56.636779" elapsed="0.005382"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.642611" 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-07-28T01:55:56.642321" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.645209" 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-07-28T01:55:56.642815" elapsed="0.002446"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.647190" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.645363" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.645343" elapsed="0.001973"/>
</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-07-28T01:55:56.647486" 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-07-28T01:55:56.647713" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.647580" elapsed="0.000195"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.647563" elapsed="0.000235"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.647830" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:56.649501" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.649547" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.635969" elapsed="0.013601"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.651724" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.650121" elapsed="0.001660"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.650103" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.652364" 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-07-28T01:55:56.651949" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.652943" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.652579" elapsed="0.000390"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.653018" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.653195" 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-07-28T01:55:56.649780" elapsed="0.003440"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.653422" 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-07-28T01:55:56.635381" elapsed="0.018528"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.662059" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.661746" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.667241" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.669021" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.669308" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.662214" elapsed="0.007121"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.669799" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.669513" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.673781" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.669990" elapsed="0.004433"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.676259" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.674512" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.674492" elapsed="0.001838"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.693825" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.693875" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.676488" elapsed="0.017411"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.695838" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.693980" elapsed="0.001915"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.693960" elapsed="0.001959"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.695952" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.696150" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.696194" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.661261" elapsed="0.034956"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.698394" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.696786" elapsed="0.001653"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.696768" elapsed="0.001708"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.699031" 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-07-28T01:55:56.698627" elapsed="0.000431"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.699590" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.699220" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.699665" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.699843" 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-07-28T01:55:56.696435" 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-07-28T01:55:56.700026" elapsed="0.000463"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:56.660634" elapsed="0.039933"/>
</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-07-28T01:55:56.617056" elapsed="0.083581"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.610038" elapsed="0.090742"/>
</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-07-28T01:55:56.711925" 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-07-28T01:55:56.712073" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.711782" elapsed="0.000320"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.712700" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.712253" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.713162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.712882" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.713627" 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-07-28T01:55:56.713340" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.714088" 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-07-28T01:55:56.713803" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.715014" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.714264" elapsed="0.000781"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.715555" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.715207" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.716127" 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-07-28T01:55:56.715803" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.716671" 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-07-28T01:55:56.716323" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.717179" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.716865" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.717876" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.717376" elapsed="0.000546"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.718436" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.718108" 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-07-28T01:55:56.711437" elapsed="0.007116"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.719091" 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-07-28T01:55:56.718705" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.719569" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.719297" 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-07-28T01:55:56.727496" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.727138" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.731990" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.732524" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.732627" 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-07-28T01:55:56.727655" elapsed="0.004998"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.733080" 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-07-28T01:55:56.732825" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.735815" 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-07-28T01:55:56.733271" elapsed="0.002596"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.737734" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.735949" elapsed="0.001885"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.735930" elapsed="0.001932"/>
</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-07-28T01:55:56.738021" 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-07-28T01:55:56.738268" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.738114" elapsed="0.000216"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.738097" elapsed="0.000256"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.738384" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:55:56.740047" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.740093" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.726825" elapsed="0.013302"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.742350" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.740709" elapsed="0.001686"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.740681" elapsed="0.001735"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.742990" 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-07-28T01:55:56.742579" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.743563" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.743180" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.743639" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:56.743817" 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-07-28T01:55:56.740346" elapsed="0.003496"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.744012" 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-07-28T01:55:56.726146" elapsed="0.018333"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.752544" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.752216" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.758566" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.760368" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.760673" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.752699" elapsed="0.008001"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.761286" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.760860" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.765217" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.761505" elapsed="0.004389"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.767855" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.765966" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.765947" elapsed="0.001980"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.787283" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.787330" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.768070" elapsed="0.019285"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.789255" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.787447" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.787427" elapsed="0.001908"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.789368" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.789587" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.789631" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.751826" elapsed="0.037828"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.791894" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.790204" elapsed="0.001735"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.790186" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.792530" 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-07-28T01:55:56.792108" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.793072" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.792719" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.793146" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.793324" 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-07-28T01:55:56.789871" elapsed="0.003478"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.793522" 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-07-28T01:55:56.751088" elapsed="0.042880"/>
</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-07-28T01:55:56.708146" elapsed="0.085878"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.701118" elapsed="0.093021"/>
</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-07-28T01:55:56.805188" 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-07-28T01:55:56.805326" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.805049" elapsed="0.000306"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.805954" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d10d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.805523" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.806406" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.806132" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.806871" 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-07-28T01:55:56.806601" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.807360" 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-07-28T01:55:56.807084" elapsed="0.000301"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.808312" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.807553" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.808847" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.808516" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.809411" 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-07-28T01:55:56.809081" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.809955" 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-07-28T01:55:56.809626" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.810645" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.810149" elapsed="0.000543"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.811192" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.810846" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.811734" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d10d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.811391" 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-07-28T01:55:56.804719" elapsed="0.007112"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.812366" 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-07-28T01:55:56.811981" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.812807" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.812564" 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-07-28T01:55:56.820609" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.820292" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.824899" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.825396" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.825520" 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-07-28T01:55:56.820764" elapsed="0.004784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.825961" 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-07-28T01:55:56.825708" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.828556" 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-07-28T01:55:56.826148" elapsed="0.002460"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.830490" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.828722" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.828701" elapsed="0.001883"/>
</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-07-28T01:55:56.830729" 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-07-28T01:55:56.830957" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.830821" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.830804" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.831063" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:56.832990" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.833053" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.819977" elapsed="0.013107"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.836272" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.833943" elapsed="0.002392"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.833848" elapsed="0.002517"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.837164" 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-07-28T01:55:56.836591" elapsed="0.000613"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.837974" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.837444" elapsed="0.000566"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.838079" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:56.838325" 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-07-28T01:55:56.833393" elapsed="0.004967"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.838611" elapsed="0.000551"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:56.819405" elapsed="0.019845"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.847549" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.847198" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.853293" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.855088" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.855380" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.847718" elapsed="0.007689"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.855909" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.855640" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.861541" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.856099" elapsed="0.006337"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.864911" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.862556" elapsed="0.002404"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.862530" elapsed="0.002452"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.887909" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.887956" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.865123" elapsed="0.022857"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.889860" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.888061" elapsed="0.001855"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.888042" elapsed="0.001899"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.889974" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:56.890174" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.890219" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.846806" elapsed="0.043436"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.892427" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.890813" elapsed="0.001675"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.890795" elapsed="0.001716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.893077" 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-07-28T01:55:56.892664" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.893643" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.893269" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.893719" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.893900" 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-07-28T01:55:56.890474" 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-07-28T01:55:56.894084" 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-07-28T01:55:56.846155" elapsed="0.048403"/>
</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-07-28T01:55:56.801411" elapsed="0.093205"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.794413" elapsed="0.100319"/>
</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-07-28T01:55:56.905777" 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-07-28T01:55:56.905927" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.905635" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:56.906570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6020&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:56.906109" elapsed="0.000489"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.907031" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:56.906751" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.907494" 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-07-28T01:55:56.907209" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:56.907938" 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-07-28T01:55:56.907670" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.908925" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.908128" elapsed="0.000827"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.909443" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.909112" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.910029" 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-07-28T01:55:56.909703" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.910568" 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-07-28T01:55:56.910225" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.911077" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:56.910763" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.911609" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:56.911273" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.912331" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6020&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:56.911806" 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-07-28T01:55:56.905282" elapsed="0.007152"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.912994" 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-07-28T01:55:56.912605" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.913421" level="INFO">&lt;?xml version="1.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-07-28T01:55:56.913176" 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-07-28T01:55:56.921432" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.921078" elapsed="0.000397"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.926076" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.926640" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:56.926743" 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-07-28T01:55:56.921607" elapsed="0.005161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.927197" 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-07-28T01:55:56.926929" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.930144" 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-07-28T01:55:56.927387" elapsed="0.002830"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:56.932921" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:56.930360" elapsed="0.002656"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.930331" 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-07-28T01:55:56.933250" 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-07-28T01:55:56.933601" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.933377" elapsed="0.000299"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:56.933354" elapsed="0.000355"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.933754" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:56.936081" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:56.936144" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:56.920761" elapsed="0.015415"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.938750" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.937029" elapsed="0.001766"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.937004" elapsed="0.001813"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.939476" 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-07-28T01:55:56.938963" elapsed="0.000543"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.940035" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:56.939669" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:56.940110" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:56.940289" 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-07-28T01:55:56.936552" elapsed="0.003795"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:56.940530" 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-07-28T01:55:56.920154" elapsed="0.020837"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.948971" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:56.948662" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:56.957261" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:56.959858" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&lt;/id&gt;&lt;table_id&gt;2&lt;/table_id&gt;&lt;priority&gt;21&lt;/priority&gt;&lt;cookie_mas... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:56.960272" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:56.949142" elapsed="0.011169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.961200" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:56.960606" elapsed="0.000673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:56.966742" 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;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;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-48&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;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-45&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;592000000&lt;/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;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;97000000&lt;/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;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;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-46&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;97000000&lt;/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;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;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-40&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;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-43&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;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-42&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;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-38&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;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-37&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;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-39&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;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-34&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;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-33&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;611000000&lt;/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;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;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-35&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;610000000&lt;/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;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;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-32&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;120000000&lt;/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;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;629000000&lt;/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;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;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-60&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;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-27&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;631000000&lt;/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;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;136000000&lt;/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;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;634000000&lt;/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;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;129000000&lt;/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;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;637000000&lt;/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;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;137000000&lt;/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;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;633000000&lt;/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;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;134000000&lt;/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;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;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-62&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;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-65&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;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-21&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;640000000&lt;/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;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;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-20&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;143000000&lt;/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;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;97000000&lt;/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;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;643000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;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;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;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-18&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;143000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;645000000&lt;/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;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;88000000&lt;/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;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;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-58&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;85000000&lt;/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;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;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-52&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;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-51&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;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-54&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;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-53&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;588000000&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-07-28T01:55:56.961505" elapsed="0.006185"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.970004" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.967791" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.967764" elapsed="0.002311"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:56.994537" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:56.994592" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:56.970216" elapsed="0.024403"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:56.996841" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:56.994720" elapsed="0.002207"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.994696" elapsed="0.002264"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:56.997000" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:55:56.997244" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:56.997292" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:56.948255" elapsed="0.049065"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:56.999949" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:56.998052" elapsed="0.001943"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:56.998031" elapsed="0.001986"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.000622" 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-07-28T01:55:57.000171" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.001204" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.000813" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.001284" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.001480" 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-07-28T01:55:56.997627" elapsed="0.003880"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.001665" 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-07-28T01:55:56.947614" elapsed="0.054508"/>
</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-07-28T01:55:56.901932" elapsed="0.100248"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:56.895026" elapsed="0.107278"/>
</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-07-28T01:55:57.013363" 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-07-28T01:55:57.013537" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.013221" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.014158" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65620&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.013718" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.014639" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.014337" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.015086" 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-07-28T01:55:57.014817" elapsed="0.000295"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.015542" 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-07-28T01:55:57.015259" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.016514" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.015717" elapsed="0.000829"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.017031" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.016702" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.017683" 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-07-28T01:55:57.017313" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.018237" 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-07-28T01:55:57.017878" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.018793" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.018460" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.019331" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.019002" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.020037" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65620&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.019544" elapsed="0.000537"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:57.012877" elapsed="0.007262"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.020707" 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-07-28T01:55:57.020291" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.021175" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.020890" 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-07-28T01:55:57.029041" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.028734" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.034714" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.035290" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.035394" 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-07-28T01:55:57.029195" elapsed="0.006226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.035886" 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-07-28T01:55:57.035615" elapsed="0.000331"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.038749" 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-07-28T01:55:57.036092" elapsed="0.002730"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.041627" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.038968" elapsed="0.002758"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.038940" elapsed="0.002835"/>
</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-07-28T01:55:57.041980" 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-07-28T01:55:57.042280" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.042108" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.042085" elapsed="0.000271"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.042388" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:57.044062" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.044108" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.028389" 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-07-28T01:55:57.046481" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.044824" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.044806" elapsed="0.001745"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.047113" 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-07-28T01:55:57.046701" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.047690" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.047313" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.047766" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.047957" 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-07-28T01:55:57.044346" elapsed="0.003637"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.048140" elapsed="0.000436"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:57.027821" elapsed="0.020832"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.056714" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.056355" elapsed="0.000387"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.063804" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.065656" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.065959" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.056886" elapsed="0.009100"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.066805" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.066150" elapsed="0.000726"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.072390" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.067118" elapsed="0.006248"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.075643" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.073490" elapsed="0.002203"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.073442" elapsed="0.002274"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.147747" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.147812" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.075861" elapsed="0.071976"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.149876" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.147968" elapsed="0.001972"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.147935" elapsed="0.002032"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.150005" elapsed="0.000155"/>
</return>
<msg time="2026-07-28T01:55:57.150355" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.150399" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.055981" elapsed="0.094442"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.152726" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.151121" elapsed="0.001650"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.151102" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.153426" 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-07-28T01:55:57.152951" elapsed="0.000506"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.153991" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.153637" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.154067" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.154249" 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-07-28T01:55:57.150752" elapsed="0.003522"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.154433" elapsed="0.000474"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:57.055333" elapsed="0.099639"/>
</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-07-28T01:55:57.009575" elapsed="0.145458"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.002635" elapsed="0.152523"/>
</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-07-28T01:55:57.166359" 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-07-28T01:55:57.166545" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.166215" elapsed="0.000360"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.167179" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.166743" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.167684" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.167374" elapsed="0.000337"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.168129" 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-07-28T01:55:57.167862" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.168604" 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-07-28T01:55:57.168308" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.169498" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.168780" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.170022" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.169689" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.170829" 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-07-28T01:55:57.170282" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.171363" 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-07-28T01:55:57.171032" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.171890" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.171574" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.172410" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.172088" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.172954" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3843150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.172632" 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-07-28T01:55:57.165879" elapsed="0.007173"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.173601" 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-07-28T01:55:57.173202" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.174024" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.173783" 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-07-28T01:55:57.181873" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.181561" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.186543" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.187153" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.187293" 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-07-28T01:55:57.182031" elapsed="0.005298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.187935" 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-07-28T01:55:57.187577" elapsed="0.000421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.191579" 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-07-28T01:55:57.188196" elapsed="0.003455"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.194226" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.191749" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.191722" 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-07-28T01:55:57.194649" 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-07-28T01:55:57.195015" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.194781" elapsed="0.000310"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.194758" elapsed="0.000366"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.195169" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:57.196816" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.196860" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.181169" elapsed="0.015714"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.199048" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.197430" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.197413" elapsed="0.001702"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.199681" 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-07-28T01:55:57.199266" elapsed="0.000442"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.200217" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.199868" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.200292" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.200487" 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-07-28T01:55:57.197094" elapsed="0.003420"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.200670" 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-07-28T01:55:57.180616" elapsed="0.020502"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.209012" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.208714" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.217349" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.219329" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.219640" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.209166" elapsed="0.010501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.220083" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.219827" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.228497" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.220365" elapsed="0.008786"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.230993" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.229226" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.229206" elapsed="0.001859"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.254351" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.254400" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.231208" elapsed="0.023215"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.256367" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.254523" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.254503" elapsed="0.001947"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.256511" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:57.256716" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.256760" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.208324" elapsed="0.048459"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.259012" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.257348" elapsed="0.001710"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.257330" elapsed="0.001750"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.259718" 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-07-28T01:55:57.259231" elapsed="0.000515"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.260273" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.259911" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.260348" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.260553" 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-07-28T01:55:57.257006" elapsed="0.003573"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.260738" 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-07-28T01:55:57.207710" elapsed="0.053484"/>
</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-07-28T01:55:57.162514" elapsed="0.098738"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.155503" elapsed="0.105874"/>
</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-07-28T01:55:57.272430" 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-07-28T01:55:57.272600" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.272289" elapsed="0.000340"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.273214" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03583b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.272779" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.273695" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.273395" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.274140" 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-07-28T01:55:57.273872" elapsed="0.000293"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.274598" 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-07-28T01:55:57.274313" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.275569" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.274774" elapsed="0.000826"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.276129" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.275797" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.276722" 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-07-28T01:55:57.276366" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.277251" 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-07-28T01:55:57.276919" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.277775" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.277442" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.278298" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.277970" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.280878" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03583b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.278512" elapsed="0.002410"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:57.271958" elapsed="0.009021"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.281533" 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-07-28T01:55:57.281129" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.281957" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.281714" 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-07-28T01:55:57.289867" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.289561" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.294052" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.294577" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.294689" 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-07-28T01:55:57.290025" elapsed="0.004690"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.295129" 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-07-28T01:55:57.294876" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.297706" 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-07-28T01:55:57.295335" elapsed="0.002422"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.299638" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.297862" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.297842" elapsed="0.001890"/>
</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-07-28T01:55:57.299875" 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-07-28T01:55:57.300136" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.299999" elapsed="0.000189"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.299953" elapsed="0.000267"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.300270" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:57.302559" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.302623" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.289209" elapsed="0.013446"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.305744" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.303436" elapsed="0.002379"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.303411" elapsed="0.002435"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.306641" 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-07-28T01:55:57.306053" elapsed="0.000626"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.307393" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.306905" elapsed="0.000523"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.307522" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:55:57.307773" 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-07-28T01:55:57.302974" elapsed="0.004832"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.308062" elapsed="0.000572"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:57.288594" elapsed="0.020131"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.316725" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.316405" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.321547" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.323319" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.323627" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.316883" elapsed="0.006772"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.324070" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.323815" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.329345" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.324304" elapsed="0.005973"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.332904" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.330382" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.330354" elapsed="0.002650"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.356352" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.356412" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.333203" elapsed="0.023234"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.358502" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.356619" elapsed="0.001944"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.356590" elapsed="0.001999"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.358625" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:55:57.358844" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.358888" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.315985" elapsed="0.042926"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.361300" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.359551" elapsed="0.001795"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.359532" elapsed="0.001836"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.362022" 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-07-28T01:55:57.361554" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.362589" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.362213" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.362664" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.362844" 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-07-28T01:55:57.359168" 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-07-28T01:55:57.363028" 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-07-28T01:55:57.315353" elapsed="0.048164"/>
</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-07-28T01:55:57.268663" elapsed="0.094914"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.261705" elapsed="0.102011"/>
</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-07-28T01:55:57.374843" 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-07-28T01:55:57.375013" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.374694" elapsed="0.000347"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.375647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.375195" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.376113" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.375831" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.376577" 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-07-28T01:55:57.376290" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.377034" 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-07-28T01:55:57.376765" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.377950" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.377213" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.378497" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.378139" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.379086" 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-07-28T01:55:57.378757" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.379627" 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-07-28T01:55:57.379282" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.380134" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.379820" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.380664" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.380329" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.381346" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.380920" elapsed="0.000472"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:57.374338" elapsed="0.007110"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.382015" 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-07-28T01:55:57.381616" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.382505" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.382215" 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-07-28T01:55:57.390656" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.390317" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.395197" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.395817" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.395925" 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-07-28T01:55:57.390824" elapsed="0.005127"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.396402" 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-07-28T01:55:57.396121" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.399800" 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-07-28T01:55:57.396609" elapsed="0.003265"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.402570" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.399975" elapsed="0.002694"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.399947" elapsed="0.002816"/>
</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-07-28T01:55:57.402998" 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-07-28T01:55:57.403318" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.403128" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.403105" elapsed="0.000317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.403489" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:55:57.405695" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.405740" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.390001" elapsed="0.015763"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.407993" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.406336" elapsed="0.001713"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.406317" elapsed="0.001763"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.408670" 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-07-28T01:55:57.408235" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.409259" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.408872" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.409335" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.409548" 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-07-28T01:55:57.405983" elapsed="0.003592"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.409733" 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-07-28T01:55:57.389402" elapsed="0.020798"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.418311" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.418000" elapsed="0.000339"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.426661" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.428486" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.428799" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.418494" elapsed="0.010332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.429374" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.428989" elapsed="0.000433"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.434799" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.429592" elapsed="0.006146"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.438339" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.435840" elapsed="0.002548"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.435813" elapsed="0.002598"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.463301" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.463349" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.438574" 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-07-28T01:55:57.465204" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.463472" elapsed="0.001790"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.463435" elapsed="0.001852"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.465320" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:55:57.465571" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.465616" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.417614" elapsed="0.048024"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.467953" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.466213" elapsed="0.001787"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.466194" elapsed="0.001827"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.468664" 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-07-28T01:55:57.468173" elapsed="0.000521"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.469296" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.468883" elapsed="0.000443"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.469386" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:57.469668" 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-07-28T01:55:57.465869" elapsed="0.003831"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.469900" 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-07-28T01:55:57.416918" elapsed="0.053470"/>
</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-07-28T01:55:57.370968" elapsed="0.099477"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.364042" elapsed="0.106547"/>
</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-07-28T01:55:57.481742" 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-07-28T01:55:57.481902" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.481579" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.482531" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359c60&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.482083" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.483002" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.482715" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.483456" 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-07-28T01:55:57.483183" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.483918" 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-07-28T01:55:57.483648" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.484816" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.484096" elapsed="0.000751"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.485343" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.485008" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.485977" 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-07-28T01:55:57.485608" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.486529" 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-07-28T01:55:57.486177" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.487046" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.486726" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.487588" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.487246" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.488115" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0359c60&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.487791" 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-07-28T01:55:57.481217" elapsed="0.006999"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.488785" 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-07-28T01:55:57.488370" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.489213" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.488969" 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-07-28T01:55:57.498288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.497952" elapsed="0.000364"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.503599" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.504355" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.504525" 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-07-28T01:55:57.498474" elapsed="0.006089"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.505147" 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-07-28T01:55:57.504788" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.508798" 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-07-28T01:55:57.505415" elapsed="0.003456"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.511612" elapsed="0.000055"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.508980" elapsed="0.002744"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.508952" elapsed="0.002904"/>
</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-07-28T01:55:57.512068" 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-07-28T01:55:57.512385" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.512197" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.512174" elapsed="0.000340"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.512560" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:57.514919" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.514987" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.497599" elapsed="0.017423"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.518122" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.515825" elapsed="0.002361"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.515800" elapsed="0.002416"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.518802" 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-07-28T01:55:57.518370" elapsed="0.000458"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.519363" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.518991" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.519442" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:55:57.519645" 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-07-28T01:55:57.515333" elapsed="0.004338"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.519855" 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-07-28T01:55:57.496908" elapsed="0.023433"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.528363" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.528054" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.536735" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.539247" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.539689" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.528544" elapsed="0.011183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.540314" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.539955" elapsed="0.000424"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.546152" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.540606" elapsed="0.006514"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.549886" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.547232" elapsed="0.002739"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.547199" elapsed="0.002807"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.573902" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.573951" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.550304" elapsed="0.023670"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.575928" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.574061" elapsed="0.001925"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.574040" elapsed="0.001971"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.576045" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:57.576254" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.576299" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.527645" elapsed="0.048676"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.578553" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.576922" elapsed="0.001678"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.576904" elapsed="0.001718"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.579205" 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-07-28T01:55:57.578776" elapsed="0.000457"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.579782" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.579400" elapsed="0.000409"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.579858" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.580036" 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-07-28T01:55:57.576578" 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-07-28T01:55:57.580220" 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-07-28T01:55:57.527000" elapsed="0.053732"/>
</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-07-28T01:55:57.477920" elapsed="0.102885"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.470910" elapsed="0.110057"/>
</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-07-28T01:55:57.592192" 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-07-28T01:55:57.592374" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.592047" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.592999" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06915d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.592571" elapsed="0.000456"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.593476" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.593179" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.593925" 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-07-28T01:55:57.593654" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.594372" 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-07-28T01:55:57.594099" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.595321" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.594563" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.595865" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.595527" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.596437" 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-07-28T01:55:57.596113" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.596984" 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-07-28T01:55:57.596653" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.597510" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.597179" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.598029" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.597709" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.598564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06915d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.598226" 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-07-28T01:55:57.591707" elapsed="0.007000"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.599281" 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-07-28T01:55:57.598867" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.599754" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.599504" 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-07-28T01:55:57.609602" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.609270" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.614166" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.614747" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.614924" 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-07-28T01:55:57.609761" elapsed="0.005191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.615520" 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-07-28T01:55:57.615123" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.619154" 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-07-28T01:55:57.615790" elapsed="0.003439"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.621864" elapsed="0.000045"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.619331" elapsed="0.002633"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.619302" elapsed="0.002750"/>
</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-07-28T01:55:57.622258" 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-07-28T01:55:57.622598" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.622384" elapsed="0.000287"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.622362" elapsed="0.000342"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.622747" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:57.624546" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.624592" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.608948" elapsed="0.015667"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.626792" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.625189" elapsed="0.001650"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.625171" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.627447" 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-07-28T01:55:57.627042" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.628009" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.627657" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.628085" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.628266" 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-07-28T01:55:57.624840" 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-07-28T01:55:57.628448" 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-07-28T01:55:57.608361" elapsed="0.020561"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.636847" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.636547" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.642657" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.644440" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.644745" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.637003" elapsed="0.007769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.645189" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.644934" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.649245" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.645381" elapsed="0.004520"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.651815" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.649974" elapsed="0.001889"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.649954" elapsed="0.001932"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.674431" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.674495" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.652027" elapsed="0.022493"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.676347" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.674604" elapsed="0.001799"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.674584" elapsed="0.001843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.676475" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:57.676680" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.676724" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.636158" elapsed="0.040588"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.679060" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.677311" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.677293" elapsed="0.001834"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.679766" 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-07-28T01:55:57.679277" elapsed="0.000517"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.680310" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.679957" elapsed="0.000379"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.680384" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.680583" 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-07-28T01:55:57.676974" elapsed="0.003635"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.680768" 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-07-28T01:55:57.635543" elapsed="0.045683"/>
</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-07-28T01:55:57.588319" elapsed="0.092965"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.581362" elapsed="0.100042"/>
</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-07-28T01:55:57.692444" 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-07-28T01:55:57.692619" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.692299" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.693227" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d07c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.692798" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.693712" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.693408" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.694165" 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-07-28T01:55:57.693893" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.694629" 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-07-28T01:55:57.694343" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.695557" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.694806" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.696083" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.695749" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.696676" 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-07-28T01:55:57.696328" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.697202" 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-07-28T01:55:57.696873" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.697734" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.697398" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.698251" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:57.697931" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.698787" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d07c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.698448" 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-07-28T01:55:57.691961" elapsed="0.006923"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.699450" 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-07-28T01:55:57.699035" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.699916" level="INFO">&lt;?xml version="1.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-07-28T01:55:57.699671" 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-07-28T01:55:57.707980" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.707671" elapsed="0.000336"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.713182" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.713739" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.713843" 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-07-28T01:55:57.708138" elapsed="0.005731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.714298" 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-07-28T01:55:57.714033" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.716900" 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-07-28T01:55:57.714511" elapsed="0.002442"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.718811" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.717029" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.717007" elapsed="0.001937"/>
</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-07-28T01:55:57.719095" 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-07-28T01:55:57.719323" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.719186" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.719170" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.719429" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:57.721117" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.721162" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.707319" elapsed="0.013867"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.723342" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.721752" elapsed="0.001636"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.721734" elapsed="0.001676"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.723999" 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-07-28T01:55:57.723575" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.724562" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.724189" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.724639" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:57.724820" 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-07-28T01:55:57.721403" 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-07-28T01:55:57.725004" 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-07-28T01:55:57.706759" elapsed="0.018722"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.733278" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.732977" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.738473" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.740292" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.740615" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.733436" elapsed="0.007207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.741091" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.740814" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.745229" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.741287" elapsed="0.004902"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.748896" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.746315" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.746287" elapsed="0.002709"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.774655" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.774705" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.749196" elapsed="0.025532"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.776605" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.774816" elapsed="0.001847"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.774796" elapsed="0.001891"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.776720" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:57.776926" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.776969" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.732601" elapsed="0.044390"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.779184" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.777593" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.777575" elapsed="0.001675"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.779849" 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-07-28T01:55:57.779401" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.780420" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.780041" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.780517" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:57.780701" 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-07-28T01:55:57.777230" 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-07-28T01:55:57.780885" 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-07-28T01:55:57.731972" elapsed="0.049371"/>
</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-07-28T01:55:57.688673" elapsed="0.092728"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.681723" elapsed="0.099820"/>
</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-07-28T01:55:57.792733" 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-07-28T01:55:57.792894" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.792589" elapsed="0.000334"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.793534" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.793075" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.794002" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.793717" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.794450" 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-07-28T01:55:57.794180" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.794912" 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-07-28T01:55:57.794644" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.795866" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:57.795088" elapsed="0.000809"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.796425" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.796072" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.797073" 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-07-28T01:55:57.796712" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.797650" 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-07-28T01:55:57.797293" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.798170" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.797849" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.798720" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:57.798375" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.799310" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.798917" elapsed="0.000449"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:57.792207" elapsed="0.007233"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.800059" 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-07-28T01:55:57.799617" elapsed="0.000474"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.800800" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.800248" elapsed="0.000635"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.808862" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.808437" elapsed="0.000452"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.814532" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.815164" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.815272" 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-07-28T01:55:57.809026" elapsed="0.006271"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.815736" 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-07-28T01:55:57.815479" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.818796" 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-07-28T01:55:57.815924" elapsed="0.002944"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.821558" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.819031" elapsed="0.002628"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.818999" elapsed="0.002696"/>
</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-07-28T01:55:57.821896" 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-07-28T01:55:57.822212" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.822022" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.821999" elapsed="0.000319"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.822362" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:55:57.824658" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.824749" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.808118" elapsed="0.016671"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.827804" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.825579" elapsed="0.002288"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.825554" elapsed="0.002342"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.828686" 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-07-28T01:55:57.828100" elapsed="0.000668"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.829427" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.829007" elapsed="0.000446"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.829520" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:57.829703" 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-07-28T01:55:57.825090" elapsed="0.004638"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.829887" 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-07-28T01:55:57.807539" elapsed="0.022812"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.838407" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.838101" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.844100" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.846263" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.846689" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.838585" elapsed="0.008142"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.847327" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.846959" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.853085" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.847624" elapsed="0.006189"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.855719" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.853908" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.853881" elapsed="0.001911"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.877702" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.877751" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.855938" elapsed="0.021837"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.879619" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.877858" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.877838" elapsed="0.001861"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.879733" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:57.879941" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.879985" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.837721" elapsed="0.042287"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.882246" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.880608" elapsed="0.001693"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.880590" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.882935" 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-07-28T01:55:57.882507" elapsed="0.000456"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.883497" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.883125" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.883576" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:57.883757" 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-07-28T01:55:57.880241" elapsed="0.003542"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.883941" 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-07-28T01:55:57.837067" elapsed="0.047336"/>
</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-07-28T01:55:57.788893" elapsed="0.095587"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.781868" elapsed="0.102745"/>
</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-07-28T01:55:57.896225" 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-07-28T01:55:57.896386" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.896080" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.897023" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.896584" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.897534" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.897202" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.897980" 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-07-28T01:55:57.897711" elapsed="0.000294"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.898418" 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-07-28T01:55:57.898152" elapsed="0.000291"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.899376" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:57.898610" elapsed="0.000796"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.899910" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.899580" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.900510" 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-07-28T01:55:57.900168" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.901034" 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-07-28T01:55:57.900707" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.901615" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.901225" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.902131" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:57.901813" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.904565" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:57.902327" elapsed="0.002283"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:57.895746" elapsed="0.008919"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.905206" 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-07-28T01:55:57.904817" elapsed="0.000419"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.905688" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:57.905385" elapsed="0.000368"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.913529" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.913157" elapsed="0.000409"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.918920" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.919739" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:57.919897" 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-07-28T01:55:57.913704" elapsed="0.006229"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.920559" 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-07-28T01:55:57.920155" elapsed="0.000469"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.924215" 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-07-28T01:55:57.920825" elapsed="0.003461"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:57.926779" elapsed="0.000034"/>
</return>
<status status="PASS" start="2026-07-28T01:55:57.924432" elapsed="0.002420"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.924403" elapsed="0.002474"/>
</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-07-28T01:55:57.927020" 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-07-28T01:55:57.927242" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.927109" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:57.927093" elapsed="0.000222"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.927346" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:57.929057" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:57.929115" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:57.912842" elapsed="0.016300"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.931343" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.929727" elapsed="0.001670"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.929709" elapsed="0.001719"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.932036" 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-07-28T01:55:57.931603" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.932599" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.932227" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.932675" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:57.932853" 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-07-28T01:55:57.929359" elapsed="0.003519"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:57.933034" 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-07-28T01:55:57.912265" elapsed="0.021243"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.941362" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:57.941058" elapsed="0.000331"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:57.946909" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:57.948726" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:57.949020" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:57.941536" elapsed="0.007512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.949490" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:57.949214" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.954983" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:57.949684" elapsed="0.006252"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.958542" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.956041" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.956013" elapsed="0.002603"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:57.979049" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:57.979096" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:57.958760" elapsed="0.020359"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:57.980950" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:57.979199" elapsed="0.001807"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.979179" elapsed="0.001851"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:57.981062" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:55:57.981265" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:57.981309" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:57.940683" elapsed="0.040649"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:57.983591" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:57.981928" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:57.981910" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.984213" 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-07-28T01:55:57.983806" elapsed="0.000433"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:57.984774" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:57.984401" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:57.984849" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:57.985028" 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-07-28T01:55:57.981577" 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-07-28T01:55:57.985212" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:57.940045" elapsed="0.045644"/>
</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-07-28T01:55:57.892434" elapsed="0.093313"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.885117" elapsed="0.100754"/>
</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-07-28T01:55:57.997714" 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-07-28T01:55:57.997873" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:57.997567" elapsed="0.000335"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:57.998567" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:57.998058" elapsed="0.000537"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.999032" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:57.998750" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.999543" 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-07-28T01:55:57.999218" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:57.999989" 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-07-28T01:55:57.999719" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.000922" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:58.000163" elapsed="0.000790"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.001459" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.001114" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.002051" 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-07-28T01:55:58.001726" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.002610" 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-07-28T01:55:58.002245" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.003120" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:58.002804" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.003653" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:58.003315" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.004172" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.003851" 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-07-28T01:55:57.997218" elapsed="0.007053"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.004833" 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-07-28T01:55:58.004420" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.005258" level="INFO">&lt;?xml version="1.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-07-28T01:55:58.005014" 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-07-28T01:55:58.013294" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.012983" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.018920" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.019503" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:58.019608" 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-07-28T01:55:58.013451" elapsed="0.006182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.020045" 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-07-28T01:55:58.019792" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.022632" 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-07-28T01:55:58.020232" elapsed="0.002453"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:58.025119" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:55:58.022760" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.022739" 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-07-28T01:55:58.025539" 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-07-28T01:55:58.025866" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.025675" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:58.025652" elapsed="0.000322"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.026021" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:58.028359" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:58.028424" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:58.012665" elapsed="0.015795"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.031487" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.029262" elapsed="0.002272"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.029237" elapsed="0.002319"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.032113" 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-07-28T01:55:58.031706" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.032677" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.032304" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.032760" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:55:58.032952" 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-07-28T01:55:58.028788" elapsed="0.004189"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:58.033137" 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-07-28T01:55:58.012075" elapsed="0.021544"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.041529" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.041202" elapsed="0.000355"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.049203" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.051814" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:58.052227" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:58.041688" elapsed="0.010579"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.052914" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.052533" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.058640" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:58.053184" elapsed="0.006427"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.062217" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.059723" elapsed="0.002564"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.059693" elapsed="0.002627"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.084502" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:58.084551" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:58.062547" elapsed="0.022027"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:58.086474" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.084656" elapsed="0.001877"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.084637" elapsed="0.001920"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:58.086593" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:55:58.086801" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:58.086845" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:58.040816" elapsed="0.046051"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.089115" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.087515" elapsed="0.001648"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.087496" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.089782" 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-07-28T01:55:58.089340" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.090335" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.089977" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.090412" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.090615" 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-07-28T01:55:58.087151" 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-07-28T01:55:58.090800" 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-07-28T01:55:58.040160" elapsed="0.051128"/>
</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-07-28T01:55:57.993928" elapsed="0.097417"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:57.986343" elapsed="0.105267"/>
</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-07-28T01:55:58.102863" 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-07-28T01:55:58.103021" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:58.102708" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:58.103688" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:58.103240" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.104164" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:58.103881" elapsed="0.000309"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.104651" 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-07-28T01:55:58.104353" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.105107" 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-07-28T01:55:58.104827" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.105994" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:58.105283" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.106563" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.106196" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.107137" 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-07-28T01:55:58.106802" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.107710" 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-07-28T01:55:58.107362" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.108216" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:55:58.107904" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.108749" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:55:58.108411" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.109262" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.108944" 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-07-28T01:55:58.102360" elapsed="0.006998"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.109911" 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-07-28T01:55:58.109525" elapsed="0.000416"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.110332" level="INFO">&lt;?xml version="1.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-07-28T01:55:58.110092" 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-07-28T01:55:58.118372" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.118061" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.123492" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.124011" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:58.124114" 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-07-28T01:55:58.118546" elapsed="0.005593"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.124588" 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-07-28T01:55:58.124316" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.127172" 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-07-28T01:55:58.124776" elapsed="0.002452"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:58.129131" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:55:58.127299" elapsed="0.001900"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.127280" elapsed="0.001943"/>
</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-07-28T01:55:58.129367" 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-07-28T01:55:58.129649" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.129511" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:58.129493" elapsed="0.000243"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.129768" elapsed="0.000013"/>
</return>
<msg time="2026-07-28T01:55:58.131420" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:58.131500" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:58.117745" elapsed="0.013781"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.133702" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.132072" elapsed="0.001676"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.132055" elapsed="0.001714"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.134324" 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-07-28T01:55:58.133916" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.134891" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.134529" elapsed="0.000387"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.134965" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.135144" 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-07-28T01:55:58.131740" elapsed="0.003428"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:58.135338" elapsed="0.000431"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:55:58.117170" elapsed="0.018676"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.143745" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.143400" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.148852" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.150620" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:58.150907" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:58.143901" elapsed="0.007033"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.151407" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.151097" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.155452" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:58.151615" 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-07-28T01:55:58.157977" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.156214" elapsed="0.001812"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.156194" elapsed="0.001855"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.179451" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:58.179522" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:58.158192" elapsed="0.021355"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:58.181415" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.179628" elapsed="0.001859"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.179609" elapsed="0.001904"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:58.181547" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:55:58.181798" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:58.181843" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:58.143026" elapsed="0.038840"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.184106" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.182436" elapsed="0.001715"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.182418" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.184764" 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-07-28T01:55:58.184328" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.185318" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.184955" elapsed="0.000389"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.185393" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.185588" 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-07-28T01:55:58.182089" 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-07-28T01:55:58.185781" 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-07-28T01:55:58.142400" elapsed="0.043832"/>
</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-07-28T01:55:58.098967" elapsed="0.087336"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:58.091988" elapsed="0.094438"/>
</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-07-28T01:55:58.197718" 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-07-28T01:55:58.197873" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:58.197575" elapsed="0.000327"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:58.198461" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372afc0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:58.198053" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.198984" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:58.198656" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.199445" 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-07-28T01:55:58.199163" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.199921" 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-07-28T01:55:58.199640" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.200747" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.200132" elapsed="0.000645"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.201276" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.200934" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.201875" 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-07-28T01:55:58.201540" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.202409" 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-07-28T01:55:58.202071" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.202946" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:58.202621" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.203486" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.203142" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.204015" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372afc0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.203684" 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-07-28T01:55:58.197208" elapsed="0.006906"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.204689" 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-07-28T01:55:58.204277" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.205125" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.204882" 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-07-28T01:55:58.215010" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.214704" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.220334" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.220891" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:58.221004" 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-07-28T01:55:58.215168" elapsed="0.005861"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.221505" 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-07-28T01:55:58.221189" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.224037" 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-07-28T01:55:58.221696" elapsed="0.002393"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:58.226257" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:55:58.224161" elapsed="0.002191"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.224141" elapsed="0.002246"/>
</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-07-28T01:55:58.226608" 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-07-28T01:55:58.226924" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.226737" elapsed="0.000308"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:58.226714" elapsed="0.000365"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.227124" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:58.229438" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:58.229523" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:58.214371" elapsed="0.015186"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.232608" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.230313" elapsed="0.002358"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.230288" elapsed="0.002413"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.233396" 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-07-28T01:55:58.232905" elapsed="0.000517"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.233951" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.233600" elapsed="0.000377"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.234026" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:55:58.234205" 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-07-28T01:55:58.229852" elapsed="0.004378"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:58.234384" 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-07-28T01:55:58.213807" elapsed="0.021049"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.242716" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.242399" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.248910" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.251339" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:58.251751" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:58.242871" elapsed="0.008917"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.252367" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.252013" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.257824" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:58.252675" elapsed="0.005805"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.260308" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.258554" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.258535" elapsed="0.001844"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.280942" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:58.280989" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:58.260536" elapsed="0.020477"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:58.282885" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.281111" elapsed="0.001830"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.281091" elapsed="0.001874"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:58.282998" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:58.283198" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:58.283241" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:58.242027" elapsed="0.041237"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.285504" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.283847" elapsed="0.001703"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.283829" elapsed="0.001742"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.286137" 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-07-28T01:55:58.285732" elapsed="0.000432"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.286716" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.286339" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.286790" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.286982" 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-07-28T01:55:58.283510" 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-07-28T01:55:58.287166" 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-07-28T01:55:58.241396" elapsed="0.046250"/>
</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-07-28T01:55:58.193736" elapsed="0.093967"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:58.186736" elapsed="0.101089"/>
</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-07-28T01:55:58.298966" 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-07-28T01:55:58.299235" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.298827" elapsed="0.000439"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:58.299880" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729490&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:58.299425" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.300353" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:58.300073" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.300828" 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-07-28T01:55:58.300558" elapsed="0.000296"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.301329" 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-07-28T01:55:58.301052" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.302177" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.301521" elapsed="0.000686"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.302726" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.302375" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.303314" 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-07-28T01:55:58.302963" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.303863" 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-07-28T01:55:58.303529" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.304387" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.304070" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.304936" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.304614" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.305562" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3729490&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.305210" 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-07-28T01:55:58.298483" elapsed="0.007191"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.306240" 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-07-28T01:55:58.305826" elapsed="0.000445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.306695" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.306422" elapsed="0.000333"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.314983" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.314672" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.320107" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.320673" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:58.320788" 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-07-28T01:55:58.315141" elapsed="0.005674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.321324" 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-07-28T01:55:58.320991" elapsed="0.000381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.324755" 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-07-28T01:55:58.321547" elapsed="0.003281"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:58.327445" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-07-28T01:55:58.324925" elapsed="0.002639"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.324899" elapsed="0.002700"/>
</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-07-28T01:55:58.327799" 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-07-28T01:55:58.328168" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.327975" elapsed="0.000281"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:58.327950" elapsed="0.000339"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.328333" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:55:58.330602" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:58.330647" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:58.314317" elapsed="0.016354"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.332854" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.331229" elapsed="0.001671"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.331211" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.333538" 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-07-28T01:55:58.333080" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.334099" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.333729" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.334176" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.334357" 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-07-28T01:55:58.330886" elapsed="0.003508"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:55:58.334570" 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-07-28T01:55:58.313718" elapsed="0.021322"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.342961" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.342662" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.353828" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.357716" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:58.358442" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:58.343116" elapsed="0.015435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.359661" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.358976" elapsed="0.000798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.365303" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:58.360120" elapsed="0.005872"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.367877" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.366079" elapsed="0.001850"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.366055" elapsed="0.001898"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.391341" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:58.391395" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:58.368105" elapsed="0.023315"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:58.393295" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.391523" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.391503" elapsed="0.001873"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:58.393410" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:55:58.393654" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:58.393699" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:58.342271" elapsed="0.051486"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.396021" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.394416" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.394398" elapsed="0.001690"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.396715" 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-07-28T01:55:58.396248" elapsed="0.000494"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.397253" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.396904" elapsed="0.000375"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.397328" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.397525" 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-07-28T01:55:58.394027" 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-07-28T01:55:58.397712" 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-07-28T01:55:58.341655" elapsed="0.056555"/>
</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-07-28T01:55:58.295087" elapsed="0.103182"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:58.288019" elapsed="0.110377"/>
</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-07-28T01:55:58.409684" 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-07-28T01:55:58.409949" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:58.409537" elapsed="0.000451"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:58.410596" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37291c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:58.410149" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.411066" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:58.410781" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.411531" 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-07-28T01:55:58.411244" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.411976" 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-07-28T01:55:58.411707" elapsed="0.000294"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.412782" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.412152" elapsed="0.000660"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.413301" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.412970" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.413926" 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-07-28T01:55:58.413565" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.414449" 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-07-28T01:55:58.414122" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.414972" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:55:58.414659" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.415499" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.415166" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.416017" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37291c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.415695" 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-07-28T01:55:58.409189" elapsed="0.006925"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.416665" 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-07-28T01:55:58.416264" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.417086" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:55:58.416846" 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-07-28T01:55:58.425069" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.424761" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.430114" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.430675" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:55:58.430779" 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-07-28T01:55:58.425226" elapsed="0.005578"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.431219" 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-07-28T01:55:58.430964" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.433848" 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-07-28T01:55:58.431407" elapsed="0.002492"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:55:58.435760" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:55:58.433970" elapsed="0.001857"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.433950" elapsed="0.001902"/>
</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-07-28T01:55:58.435996" 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-07-28T01:55:58.436263" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.436120" elapsed="0.000196"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:55:58.436102" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.436372" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:55:58.438015" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:55:58.438060" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:55:58.424428" elapsed="0.013675"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.440277" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.438668" elapsed="0.001655"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.438650" elapsed="0.001695"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.440924" 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-07-28T01:55:58.440510" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.441492" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.441123" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.441569" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:55:58.441749" 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-07-28T01:55:58.438317" 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-07-28T01:55:58.441944" 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-07-28T01:55:58.423868" elapsed="0.018576"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.450591" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:55:58.450261" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:58.460141" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:58.462555" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;21&lt;/priority&gt;&lt;cookie_... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:55:58.462958" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:55:58.450748" elapsed="0.012249"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.463629" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.463228" elapsed="0.000481"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.469352" 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;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;625000000&lt;/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;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;127000000&lt;/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;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;621000000&lt;/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;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;126000000&lt;/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;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;628000000&lt;/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;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;126000000&lt;/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;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;633000000&lt;/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;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;137000000&lt;/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;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;635000000&lt;/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;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;129000000&lt;/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;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;139000000&lt;/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;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;636000000&lt;/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;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;635000000&lt;/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;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;139000000&lt;/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;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;640000000&lt;/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;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;137000000&lt;/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;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;639000000&lt;/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;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;159000000&lt;/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;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;149000000&lt;/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;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;658000000&lt;/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;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;613000000&lt;/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;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;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-27&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;660000000&lt;/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;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;165000000&lt;/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;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;663000000&lt;/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;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;158000000&lt;/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;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;666000000&lt;/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;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;166000000&lt;/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;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;662000000&lt;/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;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;163000000&lt;/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;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;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-62&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;106000000&lt;/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;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;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-21&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;669000000&lt;/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;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;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-20&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;172000000&lt;/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;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;126000000&lt;/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;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;672000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-16&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;214000000&lt;/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;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;609000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-18&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;172000000&lt;/nanosecond&gt;&lt;/duration&gt;&lt;/flow-statistics&gt;&lt;flags/&gt;&lt;/flow&gt;&lt;flow&gt;&lt;id&gt;#UF$TABLE*2-17&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;674000000&lt;/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;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;117000000&lt;/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;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;619000000&lt;/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;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;114000000&lt;/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;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;618000000&lt;/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;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;113000000&lt;/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;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;622000000&lt;/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;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;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-53&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;617000000&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-07-28T01:55:58.463910" elapsed="0.006132"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.471932" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.470123" elapsed="0.001862"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.470100" elapsed="0.001908"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.493304" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:55:58.493352" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:55:58.472157" elapsed="0.021218"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:55:58.495204" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:55:58.493460" elapsed="0.001800"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.493437" elapsed="0.001847"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:55:58.495318" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:55:58.495559" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:55:58.495615" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:55:58.449843" elapsed="0.045795"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:55:58.497822" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:55:58.496223" elapsed="0.001645"/>
</branch>
<status status="PASS" start="2026-07-28T01:55:58.496205" elapsed="0.001685"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.498479" 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-07-28T01:55:58.498042" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.499083" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:55:58.498721" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:55:58.499158" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:55:58.499339" 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-07-28T01:55:58.495878" 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-07-28T01:55:58.499562" 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-07-28T01:55:58.449185" elapsed="0.050842"/>
</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-07-28T01:55:58.405898" elapsed="0.094187"/>
</kw>
<status status="PASS" start="2026-07-28T01:55:58.398768" elapsed="0.101444"/>
</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-07-28T01:55:58.501595" level="INFO">f1.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:58.501322" elapsed="0.000319"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:58.505114" 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-07-28T01:55:58.505394" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.504970" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:58.506003" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c720&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:58.505596" elapsed="0.000435"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.506506" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:58.506185" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.507017" 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-07-28T01:55:58.506735" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:58.507517" 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-07-28T01:55:58.507195" elapsed="0.000348"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:58.508288" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:58.507695" elapsed="0.000623"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.508814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.508492" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.509381" 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-07-28T01:55:58.509066" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.509906" 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-07-28T01:55:58.509591" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.510401" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:58.510099" elapsed="0.000347"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.510941" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:58.510616" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:58.511474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c720&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:58.511137" 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-07-28T01:55:58.504631" elapsed="0.006941"/>
</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-07-28T01:55:58.514903" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e76a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:58.512533" elapsed="0.002399"/>
</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-07-28T01:55:58.515085" 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-07-28T01:55:58.515542" 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-07-28T01:55:58.515943" 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-07-28T01:55:58.516333" elapsed="0.000352"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:58.517103" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a5080&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-07-28T01:55:58.516837" 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-07-28T01:55:58.517278" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:58.518043" 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-07-28T01:55:58.517689" elapsed="0.000414"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:58.518650" 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-07-28T01:55:58.518255" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:59.052300" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:59.052650" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:59.052974" 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-07-28T01:55:58.518848" elapsed="0.534193"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.058722" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:59.053555" elapsed="0.005292"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6c720&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-07-28T01:55:58.512163" elapsed="0.546841"/>
</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-07-28T01:55:58.511723" elapsed="0.547494"/>
</kw>
<var name="${flowfile}">f1.xml</var>
<status status="PASS" start="2026-07-28T01:55:58.501185" elapsed="0.558097"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.060041" level="INFO">f2.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:59.059680" 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-07-28T01:55:59.065092" 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-07-28T01:55:59.065305" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:59.064884" elapsed="0.000476"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:59.066196" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f560&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:59.065609" elapsed="0.000628"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.066886" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:59.066480" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.067680" 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-07-28T01:55:59.067235" elapsed="0.000483"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.068332" 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-07-28T01:55:59.067940" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:59.069188" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:59.068541" elapsed="0.000679"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.069747" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:59.069392" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.070257" 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-07-28T01:55:59.069947" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.070786" 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-07-28T01:55:59.070451" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.071314" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:59.070983" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.071832" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:59.071524" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.072341" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f560&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:59.072028" 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-07-28T01:55:59.064338" elapsed="0.008097"/>
</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-07-28T01:55:59.073744" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6cae0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:59.073395" elapsed="0.000377"/>
</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-07-28T01:55:59.073919" 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-07-28T01:55:59.074338" elapsed="0.000257"/>
</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-07-28T01:55:59.074746" elapsed="0.000585"/>
</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-07-28T01:55:59.075505" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:59.076349" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a4450&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-07-28T01:55:59.076033" elapsed="0.000353"/>
</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-07-28T01:55:59.076630" elapsed="0.000350"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:59.077721" 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-07-28T01:55:59.077187" elapsed="0.000634"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:59.078594" 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-07-28T01:55:59.078028" elapsed="0.000609"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:55:59.553380" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:55:59.553626" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:55:59.553890" 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-07-28T01:55:59.078819" elapsed="0.475133"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.559549" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:59.554427" elapsed="0.005222"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6f560&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-07-28T01:55:59.073039" elapsed="0.486708"/>
</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-07-28T01:55:59.072604" elapsed="0.487222"/>
</kw>
<var name="${flowfile}">f2.xml</var>
<status status="PASS" start="2026-07-28T01:55:59.059488" elapsed="0.500400"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.560689" level="INFO">f3.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:55:59.560275" elapsed="0.000479"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:55:59.566081" 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-07-28T01:55:59.566304" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:59.565875" elapsed="0.000471"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:55:59.567220" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a070&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:55:59.566594" elapsed="0.000669"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.567904" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:55:59.567504" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.568664" 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-07-28T01:55:59.568238" elapsed="0.000464"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:55:59.569306" 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-07-28T01:55:59.568920" elapsed="0.000424"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:55:59.570438" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:55:59.569579" elapsed="0.000931"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.571295" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:59.570758" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.572056" 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-07-28T01:55:59.571617" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.572831" 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-07-28T01:55:59.572337" elapsed="0.000552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.573558" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:55:59.573102" elapsed="0.000521"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.574287" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:55:59.573838" elapsed="0.000517"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:55:59.575073" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a070&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:55:59.574598" elapsed="0.000537"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:55:59.565340" elapsed="0.009930"/>
</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-07-28T01:55:59.577402" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372aa70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:55:59.576904" elapsed="0.000539"/>
</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-07-28T01:55:59.577680" elapsed="0.000381"/>
</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-07-28T01:55:59.578282" elapsed="0.000444"/>
</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-07-28T01:55:59.578993" elapsed="0.000377"/>
</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-07-28T01:55:59.579571" elapsed="0.000546"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:55:59.580650" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372bd30&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-07-28T01:55:59.580293" elapsed="0.000392"/>
</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-07-28T01:55:59.580877" elapsed="0.000313"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:55:59.581867" 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-07-28T01:55:59.581383" elapsed="0.000564"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:55:59.582541" 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-07-28T01:55:59.582128" elapsed="0.000444"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:00.053749" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:00.054098" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:00.054663" 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-07-28T01:55:59.582708" elapsed="0.472037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.061281" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:00.055334" elapsed="0.006060"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a372a070&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-07-28T01:55:59.576255" elapsed="0.485401"/>
</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-07-28T01:55:59.575591" elapsed="0.486205"/>
</kw>
<var name="${flowfile}">f3.xml</var>
<status status="PASS" start="2026-07-28T01:55:59.560075" elapsed="0.501812"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.063409" level="INFO">f4.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:00.062776" 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-07-28T01:56:00.067592" 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-07-28T01:56:00.067763" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:00.067421" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:00.068486" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4590&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:00.067993" elapsed="0.000562"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.069012" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:00.068719" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.069579" 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-07-28T01:56:00.069235" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.070127" 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-07-28T01:56:00.069775" elapsed="0.000393"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:00.071415" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:00.070412" elapsed="0.001065"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.072153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:00.071697" elapsed="0.000502"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.072752" 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-07-28T01:56:00.072357" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.073368" 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-07-28T01:56:00.072952" elapsed="0.000467"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.074042" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:00.073640" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.074696" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:00.074285" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.075297" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4590&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:00.074929" elapsed="0.000410"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:00.067027" elapsed="0.008368"/>
</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-07-28T01:56:00.076912" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e79c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:00.076480" elapsed="0.000461"/>
</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-07-28T01:56:00.077137" elapsed="0.000427"/>
</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-07-28T01:56:00.077775" elapsed="0.000364"/>
</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-07-28T01:56:00.078340" elapsed="0.000633"/>
</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-07-28T01:56:00.079204" elapsed="0.000453"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:00.080174" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3728310&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-07-28T01:56:00.079834" elapsed="0.000368"/>
</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-07-28T01:56:00.080357" elapsed="0.000316"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:00.081348" 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-07-28T01:56:00.080876" elapsed="0.000555"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:00.082214" 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-07-28T01:56:00.081633" elapsed="0.000614"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:00.555432" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:00.555687" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:00.555953" 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-07-28T01:56:00.082382" elapsed="0.473704"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.562029" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:00.556685" elapsed="0.005476"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e4590&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-07-28T01:56:00.076058" elapsed="0.486229"/>
</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-07-28T01:56:00.075567" elapsed="0.486776"/>
</kw>
<var name="${flowfile}">f4.xml</var>
<status status="PASS" start="2026-07-28T01:56:00.062231" elapsed="0.500150"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.562947" level="INFO">f5.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:00.562678" elapsed="0.000318"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:00.566644" 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-07-28T01:56:00.566835" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:00.566490" elapsed="0.000387"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:00.567509" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:00.567037" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.568067" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:00.567768" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.568584" 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-07-28T01:56:00.568267" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:00.569066" 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-07-28T01:56:00.568772" elapsed="0.000322"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:00.570051" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:00.569261" elapsed="0.000823"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.570620" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:00.570254" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.571165" 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-07-28T01:56:00.570822" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.571720" 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-07-28T01:56:00.571366" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.572240" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:00.571920" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.572800" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:00.572454" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:00.573395" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:00.573049" 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-07-28T01:56:00.566084" elapsed="0.007429"/>
</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-07-28T01:56:00.574908" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f2a70&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:00.574547" elapsed="0.000389"/>
</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-07-28T01:56:00.575094" elapsed="0.000471"/>
</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-07-28T01:56:00.575723" 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-07-28T01:56:00.576136" 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-07-28T01:56:00.576570" elapsed="0.000366"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:00.577415" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e54e0&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-07-28T01:56:00.577113" 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-07-28T01:56:00.577618" elapsed="0.000308"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:00.578507" 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-07-28T01:56:00.578092" elapsed="0.000495"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:00.579223" 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-07-28T01:56:00.578789" elapsed="0.000469"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:01.056890" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:01.057073" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:01.057363" 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-07-28T01:56:00.579393" elapsed="0.478054"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.062757" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:01.057944" elapsed="0.004918"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e7f10&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-07-28T01:56:00.574162" elapsed="0.488876"/>
</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-07-28T01:56:00.573697" elapsed="0.489463"/>
</kw>
<var name="${flowfile}">f5.xml</var>
<status status="PASS" start="2026-07-28T01:56:00.562537" elapsed="0.500705"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.064490" level="INFO">f6.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:01.063863" 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-07-28T01:56:01.068586" 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-07-28T01:56:01.068776" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:01.068421" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:01.069432" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1e40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:01.068968" elapsed="0.000509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.069930" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:01.069639" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.070391" 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-07-28T01:56:01.070112" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.070885" 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-07-28T01:56:01.070600" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:01.071759" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:01.071064" elapsed="0.000729"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.072329" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:01.071956" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.072906" 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-07-28T01:56:01.072549" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.073420" 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-07-28T01:56:01.073104" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.074019" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:01.073705" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.074590" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:01.074240" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.075119" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f1e40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:01.074801" 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-07-28T01:56:01.068058" elapsed="0.007162"/>
</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-07-28T01:56:01.076841" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f0d60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:01.076236" elapsed="0.000638"/>
</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-07-28T01:56:01.077031" 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-07-28T01:56:01.077481" 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-07-28T01:56:01.077870" 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-07-28T01:56:01.078283" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:01.079063" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f3d80&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-07-28T01:56:01.078795" 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-07-28T01:56:01.079238" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:01.080043" 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-07-28T01:56:01.079662" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:01.080701" 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-07-28T01:56:01.080256" elapsed="0.000477"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:01.557968" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:01.558158" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:01.558740" 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-07-28T01:56:01.080894" elapsed="0.477945"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.562754" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:01.559298" elapsed="0.003540"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b05f1e40&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-07-28T01:56:01.075861" elapsed="0.487080"/>
</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-07-28T01:56:01.075371" elapsed="0.487665"/>
</kw>
<var name="${flowfile}">f6.xml</var>
<status status="PASS" start="2026-07-28T01:56:01.063529" elapsed="0.499561"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.563860" level="INFO">f7.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:01.563449" elapsed="0.000474"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:01.568683" 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-07-28T01:56:01.568843" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:01.568535" elapsed="0.000337"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:01.569494" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f671f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:01.569025" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.569965" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:01.569681" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.570420" 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-07-28T01:56:01.570146" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:01.570890" 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-07-28T01:56:01.570617" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:01.571848" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:01.571067" elapsed="0.000812"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.572376" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:01.572043" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.572903" 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-07-28T01:56:01.572590" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.573411" 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-07-28T01:56:01.573096" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.573927" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:01.573623" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.574430" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:01.574123" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:01.574948" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f671f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:01.574643" 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-07-28T01:56:01.568113" elapsed="0.006930"/>
</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-07-28T01:56:01.576570" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f67880&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:01.576195" 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-07-28T01:56:01.576746" 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-07-28T01:56:01.577161" elapsed="0.000246"/>
</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-07-28T01:56:01.577571" 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-07-28T01:56:01.578003" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:01.578780" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f64f90&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-07-28T01:56:01.578512" 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-07-28T01:56:01.578955" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:01.579775" 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-07-28T01:56:01.579345" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:01.580436" 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-07-28T01:56:01.579991" elapsed="0.000495"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:02.058885" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:02.059070" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:02.059358" 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-07-28T01:56:01.580619" elapsed="0.478804"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.064864" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:02.059934" elapsed="0.005069"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f671f0&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-07-28T01:56:01.575640" elapsed="0.489541"/>
</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-07-28T01:56:01.575192" elapsed="0.490111"/>
</kw>
<var name="${flowfile}">f7.xml</var>
<status status="PASS" start="2026-07-28T01:56:01.563254" elapsed="0.502130"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.066733" level="INFO">f8.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:02.066047" elapsed="0.001576"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:02.073277" 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-07-28T01:56:02.073594" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:02.073016" elapsed="0.000740"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:02.074849" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323dd0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:02.074039" elapsed="0.000853"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.075508" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:02.075140" elapsed="0.000396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.076057" 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-07-28T01:56:02.075714" elapsed="0.000373"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.076559" 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-07-28T01:56:02.076247" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:02.077639" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:02.076756" elapsed="0.000916"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.078191" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:02.077838" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.078805" 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-07-28T01:56:02.078419" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.079352" 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-07-28T01:56:02.079011" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.080080" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:02.079574" elapsed="0.000552"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.080638" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:02.080294" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.081161" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323dd0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:02.080852" 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-07-28T01:56:02.072377" elapsed="0.008881"/>
</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-07-28T01:56:02.082707" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0323c90&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:02.082269" elapsed="0.000469"/>
</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-07-28T01:56:02.082891" 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-07-28T01:56:02.083338" elapsed="0.000271"/>
</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-07-28T01:56:02.083776" 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-07-28T01:56:02.084182" elapsed="0.000380"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:02.085005" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0323c40&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-07-28T01:56:02.084722" 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-07-28T01:56:02.085190" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:02.086041" 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-07-28T01:56:02.085611" elapsed="0.000547"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:02.086798" 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-07-28T01:56:02.086315" elapsed="0.000526"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:02.559993" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:02.560198" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:02.560535" 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-07-28T01:56:02.086974" elapsed="0.473629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.566248" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:02.561128" elapsed="0.005252"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b0323dd0&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-07-28T01:56:02.081885" elapsed="0.484723"/>
</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-07-28T01:56:02.081420" elapsed="0.485340"/>
</kw>
<var name="${flowfile}">f8.xml</var>
<status status="PASS" start="2026-07-28T01:56:02.065729" elapsed="0.501116"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.568098" level="INFO">f9.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:02.567417" elapsed="0.000789"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:02.572992" 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-07-28T01:56:02.573265" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:02.572792" elapsed="0.000506"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:02.574065" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef880&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:02.573504" elapsed="0.000601"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.574632" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:02.574291" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.575115" 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-07-28T01:56:02.574819" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:02.575608" 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-07-28T01:56:02.575298" elapsed="0.000338"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:02.576872" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:02.575792" elapsed="0.001120"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.577533" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:02.577134" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.578066" 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-07-28T01:56:02.577737" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.578673" 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-07-28T01:56:02.578330" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.579175" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:02.578870" elapsed="0.000350"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.579704" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:02.579372" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:02.580234" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ef880&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:02.579905" 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-07-28T01:56:02.572282" elapsed="0.008058"/>
</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-07-28T01:56:02.581822" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1fdb8d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:02.581417" elapsed="0.000433"/>
</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-07-28T01:56:02.581999" 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-07-28T01:56:02.582436" 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-07-28T01:56:02.582855" 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-07-28T01:56:02.583269" elapsed="0.000375"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:02.584091" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1fdbf10&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-07-28T01:56:02.583801" 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-07-28T01:56:02.584268" elapsed="0.000280"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:02.585165" 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-07-28T01:56:02.584707" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:02.585845" 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-07-28T01:56:02.585400" elapsed="0.000477"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:03.061290" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:03.061633" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:03.061958" 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-07-28T01:56:02.586013" elapsed="0.476014"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.067420" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:03.062536" elapsed="0.005104"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b05ef880&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-07-28T01:56:02.580998" elapsed="0.486787"/>
</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-07-28T01:56:02.580515" elapsed="0.487388"/>
</kw>
<var name="${flowfile}">f9.xml</var>
<status status="PASS" start="2026-07-28T01:56:02.567094" elapsed="0.500893"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.068710" level="INFO">f10.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:03.068426" elapsed="0.000338"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:03.072849" 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-07-28T01:56:03.073089" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:03.072641" elapsed="0.000488"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:03.073880" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699cb0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:03.073322" elapsed="0.000589"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.074380" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:03.074071" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.074882" 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-07-28T01:56:03.074596" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.075368" 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-07-28T01:56:03.075079" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:03.076695" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:03.075619" elapsed="0.001107"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.077261" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:03.076905" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.077812" 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-07-28T01:56:03.077481" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.078336" 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-07-28T01:56:03.078019" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.078956" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:03.078622" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.079528" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:03.079168" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.080068" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0699cb0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:03.079740" 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-07-28T01:56:03.072080" elapsed="0.008102"/>
</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-07-28T01:56:03.081640" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05edda0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:03.081242" elapsed="0.000427"/>
</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-07-28T01:56:03.081851" 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-07-28T01:56:03.082311" elapsed="0.000283"/>
</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-07-28T01:56:03.082760" elapsed="0.000362"/>
</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-07-28T01:56:03.083285" elapsed="0.000455"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:03.084193" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a38437e0&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-07-28T01:56:03.083902" elapsed="0.000320"/>
</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-07-28T01:56:03.084387" elapsed="0.000289"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:03.085255" 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-07-28T01:56:03.084832" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:03.085958" 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-07-28T01:56:03.085515" elapsed="0.000484"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:03.562958" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:03.563162" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:03.563524" 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-07-28T01:56:03.086138" elapsed="0.477458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.568091" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:03.564097" elapsed="0.004073"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b0699cb0&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-07-28T01:56:03.080858" elapsed="0.487407"/>
</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-07-28T01:56:03.080338" elapsed="0.488006"/>
</kw>
<var name="${flowfile}">f10.xml</var>
<status status="PASS" start="2026-07-28T01:56:03.068259" elapsed="0.500137"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.569190" level="INFO">f11.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:03.568797" 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-07-28T01:56:03.574528" 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-07-28T01:56:03.574807" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:03.574304" elapsed="0.000535"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:03.575569" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069bd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:03.575001" elapsed="0.000600"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.576104" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:03.575764" elapsed="0.000369"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.576638" 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-07-28T01:56:03.576294" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:03.577153" 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-07-28T01:56:03.576828" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:03.578449" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:03.577341" elapsed="0.001190"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.579079" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:03.578702" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.579648" 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-07-28T01:56:03.579282" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.580198" 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-07-28T01:56:03.579845" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.580767" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:03.580399" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.581350" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:03.581001" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:03.581953" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069bd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:03.581567" elapsed="0.000430"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:03.573634" elapsed="0.008456"/>
</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-07-28T01:56:03.584131" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05efb50&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:03.583535" elapsed="0.000639"/>
</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-07-28T01:56:03.584377" elapsed="0.000448"/>
</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-07-28T01:56:03.585083" elapsed="0.000411"/>
</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-07-28T01:56:03.585707" elapsed="0.000436"/>
</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-07-28T01:56:03.586375" elapsed="0.000397"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:03.587197" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069a480&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-07-28T01:56:03.586928" 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-07-28T01:56:03.587419" elapsed="0.000300"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:03.588301" 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-07-28T01:56:03.587868" elapsed="0.000539"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:03.589075" 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-07-28T01:56:03.588613" elapsed="0.000493"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:04.063597" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:04.063806" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:04.064303" 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-07-28T01:56:03.589238" elapsed="0.475134"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.070614" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:04.065014" elapsed="0.005711"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b069bd80&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-07-28T01:56:03.582968" elapsed="0.487977"/>
</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-07-28T01:56:03.582244" elapsed="0.488826"/>
</kw>
<var name="${flowfile}">f11.xml</var>
<status status="PASS" start="2026-07-28T01:56:03.568600" elapsed="0.502550"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.072390" level="INFO">f14.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:04.071813" elapsed="0.000624"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:04.076371" 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-07-28T01:56:04.076572" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:04.076213" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:04.077328" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3691530&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:04.076807" elapsed="0.000551"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.077930" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:04.077579" elapsed="0.000379"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.078475" 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-07-28T01:56:04.078122" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.079230" 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-07-28T01:56:04.078668" elapsed="0.000591"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:04.080417" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:04.079423" elapsed="0.001028"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.081008" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:04.080632" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.081655" 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-07-28T01:56:04.081274" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.082276" 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-07-28T01:56:04.081911" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.082832" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:04.082489" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.083470" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:04.083064" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.084056" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3691530&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:04.083680" elapsed="0.000492"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:04.075740" elapsed="0.008503"/>
</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-07-28T01:56:04.085729" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05efb50&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:04.085305" elapsed="0.000453"/>
</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-07-28T01:56:04.085944" elapsed="0.000276"/>
</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-07-28T01:56:04.086412" 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-07-28T01:56:04.086867" 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-07-28T01:56:04.087305" elapsed="0.000412"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:04.088242" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3692890&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-07-28T01:56:04.087875" elapsed="0.000396"/>
</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-07-28T01:56:04.088423" elapsed="0.000306"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:04.089361" 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-07-28T01:56:04.088922" elapsed="0.000512"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:04.090111" 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-07-28T01:56:04.089601" elapsed="0.000544"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:04.566614" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:04.566934" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:04.567232" 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-07-28T01:56:04.090277" elapsed="0.477020"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.574900" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:04.567833" elapsed="0.007116"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3691530&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-07-28T01:56:04.084901" elapsed="0.490117"/>
</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-07-28T01:56:04.084396" elapsed="0.490676"/>
</kw>
<var name="${flowfile}">f14.xml</var>
<status status="PASS" start="2026-07-28T01:56:04.071507" elapsed="0.503601"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.575681" level="INFO">f15.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:04.575395" elapsed="0.000337"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:04.579377" 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-07-28T01:56:04.579569" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:04.579224" elapsed="0.000375"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:04.580222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3692ed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:04.579768" elapsed="0.000486"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.580740" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:04.580414" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.581258" 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-07-28T01:56:04.580930" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:04.581784" 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-07-28T01:56:04.581456" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:04.582739" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:04.581977" elapsed="0.000794"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.583286" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:04.582938" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.583829" 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-07-28T01:56:04.583513" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.584357" 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-07-28T01:56:04.584037" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.584897" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:04.584584" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.585423" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:04.585108" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:04.585978" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3692ed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:04.585646" 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-07-28T01:56:04.578851" elapsed="0.007253"/>
</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-07-28T01:56:04.587522" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36933d0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:04.587133" elapsed="0.000419"/>
</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-07-28T01:56:04.587703" 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-07-28T01:56:04.588143" 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-07-28T01:56:04.588575" elapsed="0.000307"/>
</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-07-28T01:56:04.589035" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:04.589855" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36939c0&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-07-28T01:56:04.589567" 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-07-28T01:56:04.590083" elapsed="0.000457"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:04.591124" 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-07-28T01:56:04.590694" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:04.591799" 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-07-28T01:56:04.591356" elapsed="0.000476"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:05.067969" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:05.068153" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:05.068433" 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-07-28T01:56:04.591968" elapsed="0.476563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.073872" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:05.069005" elapsed="0.004974"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3692ed0&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-07-28T01:56:04.586756" elapsed="0.487364"/>
</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-07-28T01:56:04.586260" elapsed="0.488000"/>
</kw>
<var name="${flowfile}">f15.xml</var>
<status status="PASS" start="2026-07-28T01:56:04.575232" elapsed="0.499123"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.075610" level="INFO">f16.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:05.074964" elapsed="0.000770"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:05.079983" 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-07-28T01:56:05.080157" 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-07-28T01:56:05.079763" elapsed="0.000470"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:05.080932" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069ae30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:05.080433" elapsed="0.000528"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.081454" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:05.081119" elapsed="0.000376"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.081968" 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-07-28T01:56:05.081651" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.082425" 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-07-28T01:56:05.082151" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:05.083431" 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-07-28T01:56:05.082660" elapsed="0.000818"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.084049" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:05.083645" elapsed="0.000485"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.084658" 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-07-28T01:56:05.084288" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.085211" 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-07-28T01:56:05.084857" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.085769" 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-07-28T01:56:05.085410" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.086320" 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-07-28T01:56:05.085969" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.086886" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b069ae30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:05.086537" elapsed="0.000392"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:05.079350" elapsed="0.007672"/>
</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-07-28T01:56:05.088494" level="INFO">${req} = &lt;Element 'flow' at 0x7868b069a430&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:05.088081" elapsed="0.000442"/>
</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-07-28T01:56:05.088715" 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-07-28T01:56:05.089177" elapsed="0.000293"/>
</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-07-28T01:56:05.089625" 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-07-28T01:56:05.090067" elapsed="0.000577"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:05.091118" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b069a930&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-07-28T01:56:05.090842" 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-07-28T01:56:05.091334" elapsed="0.000268"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:05.092200" 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-07-28T01:56:05.091753" elapsed="0.000547"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:05.092953" 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-07-28T01:56:05.092500" elapsed="0.000485"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:05.569214" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:05.569380" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:05.569635" 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-07-28T01:56:05.093117" elapsed="0.476572"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.575809" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:05.570142" elapsed="0.005802"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b069ae30&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-07-28T01:56:05.087671" elapsed="0.488394"/>
</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-07-28T01:56:05.087175" elapsed="0.488988"/>
</kw>
<var name="${flowfile}">f16.xml</var>
<status status="PASS" start="2026-07-28T01:56:05.074641" elapsed="0.501588"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.577300" level="INFO">f17.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:05.576771" 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-07-28T01:56:05.582407" 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-07-28T01:56:05.582610" 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-07-28T01:56:05.582254" elapsed="0.000388"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:05.583258" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ed9e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:05.582808" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.583768" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:05.583473" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.584262" 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-07-28T01:56:05.583970" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:05.584906" 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-07-28T01:56:05.584449" elapsed="0.000484"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:05.585868" 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-07-28T01:56:05.585098" elapsed="0.000803"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.586424" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:05.586071" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.586973" 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-07-28T01:56:05.586644" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.587594" 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-07-28T01:56:05.587182" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.588116" 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-07-28T01:56:05.587799" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.588673" 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-07-28T01:56:05.588319" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:05.589201" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ed9e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:05.588876" 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-07-28T01:56:05.581867" elapsed="0.007442"/>
</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-07-28T01:56:05.590743" level="INFO">${req} = &lt;Element 'flow' at 0x7868b069bb00&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:05.590353" elapsed="0.000420"/>
</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-07-28T01:56:05.590923" 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-07-28T01:56:05.591361" 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-07-28T01:56:05.591788" elapsed="0.000452"/>
</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-07-28T01:56:05.592397" elapsed="0.000379"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:05.593219" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05ef060&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-07-28T01:56:05.592944" 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-07-28T01:56:05.593407" elapsed="0.000290"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:05.594288" 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-07-28T01:56:05.593887" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:05.594948" 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-07-28T01:56:05.594524" elapsed="0.000457"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:06.069268" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:06.069616" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:06.069895" 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-07-28T01:56:05.595128" elapsed="0.474834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.075956" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:06.070447" elapsed="0.005616"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b05ed9e0&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-07-28T01:56:05.589990" elapsed="0.486236"/>
</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-07-28T01:56:05.589497" elapsed="0.486918"/>
</kw>
<var name="${flowfile}">f17.xml</var>
<status status="PASS" start="2026-07-28T01:56:05.576522" elapsed="0.500014"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.077907" level="INFO">f18.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:06.077208" elapsed="0.000881"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:06.083306" 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-07-28T01:56:06.083520" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:06.083107" elapsed="0.000446"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:06.084254" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323510&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:06.083753" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.084806" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:06.084445" elapsed="0.000389"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.085332" 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-07-28T01:56:06.085033" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.085918" 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-07-28T01:56:06.085620" elapsed="0.000326"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:06.086881" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:06.086175" elapsed="0.000738"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.087539" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:06.087130" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.088121" 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-07-28T01:56:06.087790" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.088753" 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-07-28T01:56:06.088332" elapsed="0.000466"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.089312" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:06.088966" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.089950" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:06.089544" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.090497" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323510&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:06.090156" 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-07-28T01:56:06.082691" elapsed="0.007946"/>
</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-07-28T01:56:06.092143" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03236f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:06.091757" 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-07-28T01:56:06.092322" elapsed="0.000340"/>
</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-07-28T01:56:06.092860" 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-07-28T01:56:06.093380" elapsed="0.000524"/>
</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-07-28T01:56:06.094097" elapsed="0.000419"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:06.095027" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0300680&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-07-28T01:56:06.094690" elapsed="0.000365"/>
</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-07-28T01:56:06.095223" elapsed="0.000376"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:06.096211" 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-07-28T01:56:06.095803" elapsed="0.000473"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:06.096922" 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-07-28T01:56:06.096477" elapsed="0.000489"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:06.571440" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:06.571662" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:06.571856" 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-07-28T01:56:06.097140" elapsed="0.474757"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.575568" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:06.572224" elapsed="0.003413"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b0323510&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-07-28T01:56:06.091292" elapsed="0.484439"/>
</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-07-28T01:56:06.090801" elapsed="0.485008"/>
</kw>
<var name="${flowfile}">f18.xml</var>
<status status="PASS" start="2026-07-28T01:56:06.076807" elapsed="0.499053"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.576709" level="INFO">f19.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:06.576270" elapsed="0.000505"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:06.582333" 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-07-28T01:56:06.582633" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:06.582125" elapsed="0.000553"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:06.583564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:06.582902" elapsed="0.000704"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.584331" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:06.583878" elapsed="0.000618"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.585268" 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-07-28T01:56:06.584724" elapsed="0.000586"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:06.585840" 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-07-28T01:56:06.585554" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:06.586697" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:06.586024" elapsed="0.000705"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.587237" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:06.586897" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.587775" 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-07-28T01:56:06.587443" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.588287" 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-07-28T01:56:06.587972" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.588850" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:06.588502" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.589385" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:06.589050" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:06.589914" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:06.589600" 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-07-28T01:56:06.581565" elapsed="0.008450"/>
</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-07-28T01:56:06.591391" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f67ba0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:06.591054" 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-07-28T01:56:06.591585" elapsed="0.000310"/>
</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-07-28T01:56:06.592050" 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-07-28T01:56:06.592442" elapsed="0.000483"/>
</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-07-28T01:56:06.593081" elapsed="0.000432"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:06.593947" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0323e70&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-07-28T01:56:06.593673" 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-07-28T01:56:06.594134" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:06.594962" 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-07-28T01:56:06.594594" elapsed="0.000432"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:06.595596" 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-07-28T01:56:06.595186" elapsed="0.000442"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:07.072278" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:07.072487" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:07.072761" 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-07-28T01:56:06.595853" elapsed="0.476972"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.078203" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:07.073286" elapsed="0.005021"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f67600&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-07-28T01:56:06.590681" elapsed="0.487769"/>
</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-07-28T01:56:06.590169" elapsed="0.488586"/>
</kw>
<var name="${flowfile}">f19.xml</var>
<status status="PASS" start="2026-07-28T01:56:06.576076" elapsed="0.502792"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.079730" level="INFO">f20.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:07.079440" elapsed="0.000340"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:07.083613" 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-07-28T01:56:07.083822" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:07.083445" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:07.084494" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67290&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:07.084010" elapsed="0.000515"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.085013" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:07.084682" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.085530" 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-07-28T01:56:07.085194" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.085996" 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-07-28T01:56:07.085716" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:07.086929" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:07.086219" elapsed="0.000743"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.087525" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:07.087129" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.088050" 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-07-28T01:56:07.087732" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.088633" 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-07-28T01:56:07.088286" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.089199" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:07.088868" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.089780" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:07.089446" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.090447" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67290&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:07.090082" 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-07-28T01:56:07.083041" elapsed="0.007528"/>
</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-07-28T01:56:07.092063" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f3d80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:07.091708" 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-07-28T01:56:07.092247" 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-07-28T01:56:07.092746" 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-07-28T01:56:07.093192" elapsed="0.000506"/>
</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-07-28T01:56:07.093858" elapsed="0.000430"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:07.094837" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f67dd0&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-07-28T01:56:07.094456" elapsed="0.000409"/>
</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-07-28T01:56:07.095064" elapsed="0.000263"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:07.095893" 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-07-28T01:56:07.095496" elapsed="0.000464"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:07.096567" 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-07-28T01:56:07.096111" elapsed="0.000490"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:07.573032" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:07.573133" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:07.573322" 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-07-28T01:56:07.096736" elapsed="0.476617"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.576203" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:07.573648" elapsed="0.002603"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f67290&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-07-28T01:56:07.091321" elapsed="0.484998"/>
</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-07-28T01:56:07.090822" elapsed="0.485596"/>
</kw>
<var name="${flowfile}">f20.xml</var>
<status status="PASS" start="2026-07-28T01:56:07.079127" elapsed="0.497345"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.577043" level="INFO">f21.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:07.576777" elapsed="0.000424"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:07.581066" 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-07-28T01:56:07.581286" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:07.580910" elapsed="0.000408"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:07.582016" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:07.581508" elapsed="0.000577"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.582559" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:07.582246" elapsed="0.000381"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.583104" 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-07-28T01:56:07.582786" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:07.583623" 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-07-28T01:56:07.583289" elapsed="0.000361"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:07.584738" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:07.583807" elapsed="0.000964"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.585327" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:07.584978" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.585894" 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-07-28T01:56:07.585577" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.586504" 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-07-28T01:56:07.586134" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.587049" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:07.586702" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.587654" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:07.587288" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:07.588222" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:07.587859" 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-07-28T01:56:07.580482" elapsed="0.007844"/>
</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-07-28T01:56:07.589840" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e5800&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:07.589420" elapsed="0.000449"/>
</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-07-28T01:56:07.590277" elapsed="0.000331"/>
</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-07-28T01:56:07.590766" elapsed="0.000286"/>
</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-07-28T01:56:07.591205" elapsed="0.000300"/>
</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-07-28T01:56:07.591659" elapsed="0.000391"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:07.592588" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f0860&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-07-28T01:56:07.592288" 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-07-28T01:56:07.592811" elapsed="0.000296"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:07.593716" 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-07-28T01:56:07.593263" elapsed="0.000625"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:07.594526" 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-07-28T01:56:07.594046" elapsed="0.000512"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:08.074706" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:08.074906" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:08.075191" 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-07-28T01:56:07.594696" elapsed="0.480563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.080853" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:08.075807" elapsed="0.005152"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b05f0f40&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-07-28T01:56:07.589008" elapsed="0.492114"/>
</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-07-28T01:56:07.588496" elapsed="0.492755"/>
</kw>
<var name="${flowfile}">f21.xml</var>
<status status="PASS" start="2026-07-28T01:56:07.576602" elapsed="0.504731"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.082601" level="INFO">f22.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:08.082040" elapsed="0.000627"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:08.087927" 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-07-28T01:56:08.088160" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:08.087714" elapsed="0.000493"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:08.089104" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4ef0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:08.088438" elapsed="0.000709"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.089930" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:08.089381" elapsed="0.000591"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.090631" 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-07-28T01:56:08.090210" elapsed="0.000448"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.091109" 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-07-28T01:56:08.090815" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:08.092088" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:08.091304" elapsed="0.000817"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.092664" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:08.092286" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.093205" 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-07-28T01:56:08.092870" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.093876" 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-07-28T01:56:08.093525" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.094413" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:08.094084" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.094987" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:08.094648" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.095558" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e4ef0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:08.095203" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:08.087155" elapsed="0.008508"/>
</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-07-28T01:56:08.097243" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e7420&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:08.096871" 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-07-28T01:56:08.097428" elapsed="0.000342"/>
</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-07-28T01:56:08.097939" 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-07-28T01:56:08.098353" 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-07-28T01:56:08.098791" elapsed="0.000377"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:08.099652" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e78d0&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-07-28T01:56:08.099336" 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-07-28T01:56:08.099835" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:08.100698" 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-07-28T01:56:08.100273" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:08.101369" 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-07-28T01:56:08.100918" elapsed="0.000483"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:08.576073" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:08.576412" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:08.576745" 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-07-28T01:56:08.101587" elapsed="0.475226"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.582220" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:08.577289" elapsed="0.005036"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e4ef0&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-07-28T01:56:08.096282" elapsed="0.486247"/>
</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-07-28T01:56:08.095819" elapsed="0.486840"/>
</kw>
<var name="${flowfile}">f22.xml</var>
<status status="PASS" start="2026-07-28T01:56:08.081711" elapsed="0.501031"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.584031" level="INFO">f23.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:08.583381" elapsed="0.000757"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:08.589672" 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-07-28T01:56:08.589848" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:08.589517" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:08.590528" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7b00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:08.590046" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.591055" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:08.590730" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.591548" 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-07-28T01:56:08.591250" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:08.592072" 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-07-28T01:56:08.591732" elapsed="0.000367"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:08.593061" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:08.592257" elapsed="0.000845"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.593639" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:08.593271" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.594168" 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-07-28T01:56:08.593845" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.594717" 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-07-28T01:56:08.594368" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.595273" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:08.594953" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.595820" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:08.595496" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:08.596589" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7b00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:08.596023" elapsed="0.000613"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:08.589110" elapsed="0.007584"/>
</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-07-28T01:56:08.598075" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1f1e0c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:08.597702" elapsed="0.000402"/>
</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-07-28T01:56:08.598267" 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-07-28T01:56:08.598727" elapsed="0.000274"/>
</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-07-28T01:56:08.599216" elapsed="0.000276"/>
</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-07-28T01:56:08.599659" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:08.600480" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1fdb330&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-07-28T01:56:08.600176" elapsed="0.000335"/>
</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-07-28T01:56:08.600664" elapsed="0.000264"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:08.601511" 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-07-28T01:56:08.601081" elapsed="0.000503"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:08.602182" 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-07-28T01:56:08.601743" elapsed="0.000471"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:09.085167" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:09.085357" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:09.085669" 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-07-28T01:56:08.602358" elapsed="0.483389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.090131" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:09.086210" elapsed="0.003987"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03a7b00&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-07-28T01:56:08.597311" elapsed="0.492977"/>
</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-07-28T01:56:08.596850" elapsed="0.493516"/>
</kw>
<var name="${flowfile}">f23.xml</var>
<status status="PASS" start="2026-07-28T01:56:08.583075" elapsed="0.507343"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.091180" level="INFO">f24.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:09.090813" 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-07-28T01:56:09.096553" 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-07-28T01:56:09.096823" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:09.096298" elapsed="0.000558"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:09.097470" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032bab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:09.097014" elapsed="0.000488"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.097956" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:09.097664" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.098452" 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-07-28T01:56:09.098153" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.098952" 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-07-28T01:56:09.098656" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:09.099769" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:09.099136" elapsed="0.000666"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.100403" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:09.099968" elapsed="0.000482"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.100985" 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-07-28T01:56:09.100646" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.101825" 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-07-28T01:56:09.101210" elapsed="0.000663"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.102385" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:09.102061" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.102951" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:09.102622" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.103504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b032bab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:09.103156" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:09.095695" elapsed="0.007911"/>
</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-07-28T01:56:09.105184" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6d300&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:09.104803" elapsed="0.000419"/>
</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-07-28T01:56:09.105376" 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-07-28T01:56:09.105849" 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-07-28T01:56:09.106261" 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-07-28T01:56:09.106691" elapsed="0.000367"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:09.107524" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6e5c0&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-07-28T01:56:09.107214" elapsed="0.000338"/>
</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-07-28T01:56:09.107702" elapsed="0.000332"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:09.108626" 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-07-28T01:56:09.108224" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:09.109304" 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-07-28T01:56:09.108906" elapsed="0.000430"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:09.584634" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:09.584826" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:09.585123" 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-07-28T01:56:09.109492" elapsed="0.475797"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.590750" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:09.585818" elapsed="0.005036"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b032bab0&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-07-28T01:56:09.104329" elapsed="0.486668"/>
</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-07-28T01:56:09.103782" elapsed="0.487339"/>
</kw>
<var name="${flowfile}">f24.xml</var>
<status status="PASS" start="2026-07-28T01:56:09.090611" elapsed="0.500614"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.592446" level="INFO">f25.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:09.591836" elapsed="0.000751"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:09.596897" 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-07-28T01:56:09.597108" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:09.596748" elapsed="0.000391"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:09.597998" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328b30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:09.597475" elapsed="0.000553"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.598543" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:09.598194" elapsed="0.000377"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.599045" 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-07-28T01:56:09.598727" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:09.599552" 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-07-28T01:56:09.599260" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:09.600628" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:09.599767" elapsed="0.000892"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.601512" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:09.600857" elapsed="0.000701"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.602074" 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-07-28T01:56:09.601753" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.602659" 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-07-28T01:56:09.602311" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.603240" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:09.602895" elapsed="0.000453"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.603877" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:09.603555" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:09.604487" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0328b30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:09.604118" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:09.596294" elapsed="0.008332"/>
</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-07-28T01:56:09.606123" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1f1d710&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:09.605687" elapsed="0.000464"/>
</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-07-28T01:56:09.606300" elapsed="0.000327"/>
</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-07-28T01:56:09.606825" elapsed="0.000280"/>
</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-07-28T01:56:09.607258" elapsed="0.000297"/>
</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-07-28T01:56:09.607707" elapsed="0.000379"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:09.608563" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1f1e0c0&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-07-28T01:56:09.608276" elapsed="0.000351"/>
</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-07-28T01:56:09.608779" elapsed="0.000282"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:09.609733" 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-07-28T01:56:09.609211" elapsed="0.000591"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:09.610446" 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-07-28T01:56:09.609985" elapsed="0.000509"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:10.085132" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:10.085436" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:10.085757" 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-07-28T01:56:09.610665" elapsed="0.475155"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.091263" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:10.086272" elapsed="0.005095"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b0328b30&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-07-28T01:56:09.605270" elapsed="0.486231"/>
</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-07-28T01:56:09.604779" elapsed="0.486803"/>
</kw>
<var name="${flowfile}">f25.xml</var>
<status status="PASS" start="2026-07-28T01:56:09.591516" elapsed="0.500120"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.092335" level="INFO">f31.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:10.091983" 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-07-28T01:56:10.097705" 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-07-28T01:56:10.097958" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:10.097496" elapsed="0.000508"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:10.098907" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03298f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:10.098216" elapsed="0.000782"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.099653" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:10.099214" elapsed="0.000467"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.100177" 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-07-28T01:56:10.099871" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.100684" 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-07-28T01:56:10.100358" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:10.101614" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:10.100862" elapsed="0.000784"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.103565" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:10.101843" elapsed="0.001770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.104092" 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-07-28T01:56:10.103772" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.104702" 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-07-28T01:56:10.104327" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.105244" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:10.104898" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.105849" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:10.105496" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.106439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03298f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:10.106051" elapsed="0.000448"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:10.096898" elapsed="0.009656"/>
</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-07-28T01:56:10.108003" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6e840&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:10.107626" 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-07-28T01:56:10.108213" 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-07-28T01:56:10.108689" 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-07-28T01:56:10.109119" 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-07-28T01:56:10.109623" elapsed="0.000384"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:10.110505" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6fab0&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-07-28T01:56:10.110197" elapsed="0.000371"/>
</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-07-28T01:56:10.110721" elapsed="0.000286"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:10.111578" 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-07-28T01:56:10.111157" elapsed="0.000485"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:10.112259" 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-07-28T01:56:10.111830" elapsed="0.000461"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:10.586189" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:10.586366" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:10.586696" 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-07-28T01:56:10.112423" elapsed="0.474337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.591945" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:10.587216" elapsed="0.004833"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03298f0&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-07-28T01:56:10.107184" elapsed="0.485006"/>
</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-07-28T01:56:10.106704" elapsed="0.485607"/>
</kw>
<var name="${flowfile}">f31.xml</var>
<status status="PASS" start="2026-07-28T01:56:10.091798" elapsed="0.500592"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.593145" level="INFO">f36.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:10.592786" elapsed="0.000424"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:10.598180" 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-07-28T01:56:10.598396" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:10.597977" elapsed="0.000461"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:10.599263" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7b00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:10.598677" elapsed="0.000626"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.599983" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:10.599577" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.600645" 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-07-28T01:56:10.600310" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:10.601104" 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-07-28T01:56:10.600826" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:10.601952" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:10.601285" elapsed="0.000699"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.602498" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:10.602148" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.603008" 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-07-28T01:56:10.602698" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.603545" 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-07-28T01:56:10.603203" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.604047" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:10.603741" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.647862" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:10.604245" elapsed="0.043697"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:10.648617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7b00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:10.648189" elapsed="0.000473"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:10.597477" elapsed="0.051249"/>
</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-07-28T01:56:10.650103" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1f1e0c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:10.649747" 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-07-28T01:56:10.650278" 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-07-28T01:56:10.650719" 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-07-28T01:56:10.651107" 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-07-28T01:56:10.651538" elapsed="0.000357"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:10.652314" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b063e110&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-07-28T01:56:10.652048" 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-07-28T01:56:10.652507" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:10.653273" 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-07-28T01:56:10.652900" elapsed="0.000436"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:10.653889" 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-07-28T01:56:10.653500" elapsed="0.000419"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:11.093437" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:11.093666" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:11.093973" 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-07-28T01:56:10.654124" elapsed="0.439911"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.098722" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:11.094553" elapsed="0.004234"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03a7b00&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-07-28T01:56:10.649353" elapsed="0.449523"/>
</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-07-28T01:56:10.648885" elapsed="0.450083"/>
</kw>
<var name="${flowfile}">f36.xml</var>
<status status="PASS" start="2026-07-28T01:56:10.592597" elapsed="0.506429"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.099794" level="INFO">f38.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:11.099394" elapsed="0.000464"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:11.105054" 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-07-28T01:56:11.105269" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:11.104832" elapsed="0.000478"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:11.106009" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:11.105535" elapsed="0.000505"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.106538" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:11.106212" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.107025" 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-07-28T01:56:11.106730" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.107509" 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-07-28T01:56:11.107204" elapsed="0.000333"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:11.108575" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:11.107690" elapsed="0.000917"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.109113" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:11.108772" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.109664" 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-07-28T01:56:11.109310" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.110199" 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-07-28T01:56:11.109859" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.110743" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:11.110418" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.111304" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:11.110993" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.111826" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6f970&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:11.111517" 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-07-28T01:56:11.104254" elapsed="0.007668"/>
</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-07-28T01:56:11.113446" level="INFO">${req} = &lt;Element 'flow' at 0x7868b063fa60&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:11.113079" 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-07-28T01:56:11.113653" elapsed="0.000296"/>
</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-07-28T01:56:11.114102" 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-07-28T01:56:11.114521" 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-07-28T01:56:11.114917" elapsed="0.000335"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:11.115689" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b063c450&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-07-28T01:56:11.115405" 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-07-28T01:56:11.115864" elapsed="0.000241"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:11.116667" 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-07-28T01:56:11.116263" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:11.117293" 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-07-28T01:56:11.116886" elapsed="0.000438"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:11.594727" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:11.594908" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:11.595194" 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-07-28T01:56:11.117469" elapsed="0.477788"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.599709" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:11.595742" elapsed="0.004029"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6f970&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-07-28T01:56:11.112628" elapsed="0.487308"/>
</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-07-28T01:56:11.112071" elapsed="0.487943"/>
</kw>
<var name="${flowfile}">f38.xml</var>
<status status="PASS" start="2026-07-28T01:56:11.099194" elapsed="0.500872"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.600796" level="INFO">f43.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:11.600420" 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-07-28T01:56:11.605786" 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-07-28T01:56:11.605996" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:11.605585" elapsed="0.000452"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:11.606758" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6ee80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:11.606247" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.607244" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:11.606942" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.607712" 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-07-28T01:56:11.607424" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:11.608189" 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-07-28T01:56:11.607888" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:11.609342" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:11.608370" elapsed="0.001023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.609925" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:11.609592" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.610429" 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-07-28T01:56:11.610122" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.610951" 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-07-28T01:56:11.610638" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.611441" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:11.611142" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.611962" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:11.611656" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:11.612474" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6ee80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:11.612157" 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-07-28T01:56:11.605038" elapsed="0.007533"/>
</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-07-28T01:56:11.613880" level="INFO">${req} = &lt;Element 'flow' at 0x7868b1f1fd80&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:11.613538" 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-07-28T01:56:11.614051" 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-07-28T01:56:11.614475" 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-07-28T01:56:11.614858" elapsed="0.000240"/>
</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-07-28T01:56:11.615245" elapsed="0.000368"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:11.616038" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b1f1fc40&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-07-28T01:56:11.615765" 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-07-28T01:56:11.616251" elapsed="0.000261"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:11.617032" 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-07-28T01:56:11.616660" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:11.617721" 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-07-28T01:56:11.617242" elapsed="0.000511"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:12.106114" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:12.106341" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:12.106673" 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-07-28T01:56:11.617882" elapsed="0.488855"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.111328" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:12.107187" elapsed="0.004204"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6ee80&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-07-28T01:56:11.613144" elapsed="0.498355"/>
</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-07-28T01:56:11.612717" elapsed="0.498861"/>
</kw>
<var name="${flowfile}">f43.xml</var>
<status status="PASS" start="2026-07-28T01:56:11.600227" elapsed="0.511404"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.112337" level="INFO">f45.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:12.111979" 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-07-28T01:56:12.117328" 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-07-28T01:56:12.117545" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:12.117131" elapsed="0.000455"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:12.118399" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cf40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:12.117797" elapsed="0.000642"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.119068" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:12.118678" elapsed="0.000426"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.119641" 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-07-28T01:56:12.119314" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.120165" 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-07-28T01:56:12.119892" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:12.121167" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:12.120345" elapsed="0.000854"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.121713" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:12.121361" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.122218" 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-07-28T01:56:12.121909" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.122757" 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-07-28T01:56:12.122427" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.123252" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:12.122949" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.123774" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:12.123449" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.124281" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6cf40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:12.123973" 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-07-28T01:56:12.116633" elapsed="0.007746"/>
</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-07-28T01:56:12.125883" level="INFO">${req} = &lt;Element 'flow' at 0x7868b063dcb0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:12.125447" elapsed="0.000465"/>
</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-07-28T01:56:12.126059" elapsed="0.000297"/>
</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-07-28T01:56:12.126522" 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-07-28T01:56:12.126916" 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-07-28T01:56:12.127306" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:12.128085" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b063ca90&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-07-28T01:56:12.127819" 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-07-28T01:56:12.128260" elapsed="0.000262"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:12.129022" 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-07-28T01:56:12.128669" elapsed="0.000414"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:12.129622" 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-07-28T01:56:12.129228" elapsed="0.000424"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:12.596203" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:12.596542" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:12.596834" 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-07-28T01:56:12.129783" elapsed="0.467114"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.601965" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:12.597334" elapsed="0.004732"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6cf40&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-07-28T01:56:12.124971" elapsed="0.477230"/>
</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-07-28T01:56:12.124543" elapsed="0.477777"/>
</kw>
<var name="${flowfile}">f45.xml</var>
<status status="PASS" start="2026-07-28T01:56:12.111792" elapsed="0.490607"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.603591" level="INFO">f101.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:12.602978" elapsed="0.000715"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:12.609368" 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-07-28T01:56:12.609543" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:12.609224" elapsed="0.000349"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:12.610168" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d3a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:12.609727" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.610649" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:12.610351" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.611121" 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-07-28T01:56:12.610830" elapsed="0.000333"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:12.611618" 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-07-28T01:56:12.611326" elapsed="0.000318"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:12.612726" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:12.611795" elapsed="0.000963"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.613250" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:12.612918" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.613775" 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-07-28T01:56:12.613447" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.614280" 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-07-28T01:56:12.613968" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.614792" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:12.614485" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.615317" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:12.614987" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:12.615836" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d3a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:12.615529" 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-07-28T01:56:12.608871" elapsed="0.007059"/>
</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-07-28T01:56:12.617220" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0516e30&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:12.616872" 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-07-28T01:56:12.617391" 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-07-28T01:56:12.617823" elapsed="0.000234"/>
</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-07-28T01:56:12.618250" 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-07-28T01:56:12.618663" elapsed="0.000334"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:12.619432" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b063cea0&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-07-28T01:56:12.619164" 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-07-28T01:56:12.619631" elapsed="0.000246"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:12.620563" 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-07-28T01:56:12.620159" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:12.621187" 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-07-28T01:56:12.620777" elapsed="0.000441"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:13.097678" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:13.097865" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:13.098141" 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-07-28T01:56:12.621346" elapsed="0.476857"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.103328" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:13.098709" elapsed="0.004721"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6d3a0&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-07-28T01:56:12.616520" elapsed="0.487091"/>
</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-07-28T01:56:12.616078" elapsed="0.487656"/>
</kw>
<var name="${flowfile}">f101.xml</var>
<status status="PASS" start="2026-07-28T01:56:12.602681" elapsed="0.501133"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.105000" level="INFO">f102.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:13.104383" 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-07-28T01:56:13.110649" 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-07-28T01:56:13.110806" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:13.110426" elapsed="0.000411"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:13.111439" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690db0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:13.110991" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.111925" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:13.111641" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.112408" 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-07-28T01:56:13.112133" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.112875" 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-07-28T01:56:13.112604" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:13.114022" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:13.113052" elapsed="0.001001"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.114560" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:13.114216" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.115067" 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-07-28T01:56:13.114759" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.115589" 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-07-28T01:56:13.115259" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.116113" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:13.115781" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.116633" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:13.116312" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.117135" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0690db0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:13.116830" 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-07-28T01:56:13.110073" elapsed="0.007156"/>
</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-07-28T01:56:13.118543" level="INFO">${req} = &lt;Element 'flow' at 0x7868b063cf40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:13.118174" 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-07-28T01:56:13.118714" 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-07-28T01:56:13.119125" elapsed="0.000235"/>
</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-07-28T01:56:13.119523" 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-07-28T01:56:13.119916" elapsed="0.000348"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:13.120705" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0515cb0&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-07-28T01:56:13.120417" 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-07-28T01:56:13.120881" elapsed="0.000244"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:13.121679" 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-07-28T01:56:13.121272" elapsed="0.000512"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:13.122354" 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-07-28T01:56:13.121932" elapsed="0.000453"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:13.598854" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:13.599053" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:13.599416" 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-07-28T01:56:13.122530" elapsed="0.477045"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.606027" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:13.600112" elapsed="0.006019"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b0690db0&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-07-28T01:56:13.117825" elapsed="0.488515"/>
</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-07-28T01:56:13.117377" elapsed="0.489121"/>
</kw>
<var name="${flowfile}">f102.xml</var>
<status status="PASS" start="2026-07-28T01:56:13.104088" elapsed="0.502494"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.608027" level="INFO">f103.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:13.607270" elapsed="0.000863"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:13.612974" 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-07-28T01:56:13.613148" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:13.612806" elapsed="0.000371"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:13.613896" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:13.613370" elapsed="0.000556"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.614438" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:13.614102" elapsed="0.000378"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.614960" 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-07-28T01:56:13.614642" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:13.615508" 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-07-28T01:56:13.615177" elapsed="0.000358"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:13.616582" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:13.615688" elapsed="0.000927"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.617178" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:13.616840" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.617847" 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-07-28T01:56:13.617489" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.618404" 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-07-28T01:56:13.618044" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.618960" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:13.618616" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.619560" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:13.619197" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:13.620113" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:13.619761" elapsed="0.000394"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:13.612356" elapsed="0.007890"/>
</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-07-28T01:56:13.621766" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3841440&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:13.621347" elapsed="0.000447"/>
</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-07-28T01:56:13.621941" 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-07-28T01:56:13.622399" 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-07-28T01:56:13.622847" elapsed="0.000285"/>
</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-07-28T01:56:13.623315" elapsed="0.000552"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:13.624335" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03080e0&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-07-28T01:56:13.624060" elapsed="0.000338"/>
</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-07-28T01:56:13.624567" elapsed="0.000322"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:13.625568" 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-07-28T01:56:13.625076" elapsed="0.000563"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:13.626259" 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-07-28T01:56:13.625789" elapsed="0.000501"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:14.099804" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:14.100179" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:14.100571" 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-07-28T01:56:13.626478" elapsed="0.474172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.106987" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:14.101202" elapsed="0.005834"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3841030&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-07-28T01:56:13.620917" elapsed="0.486186"/>
</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-07-28T01:56:13.620399" elapsed="0.486763"/>
</kw>
<var name="${flowfile}">f103.xml</var>
<status status="PASS" start="2026-07-28T01:56:13.606903" elapsed="0.500296"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.107821" level="INFO">f104.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:14.107515" elapsed="0.000355"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:14.111739" 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-07-28T01:56:14.111915" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:14.111547" elapsed="0.000400"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:14.112668" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840d10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:14.112150" elapsed="0.000549"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.113211" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:14.112871" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.113778" 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-07-28T01:56:14.113396" elapsed="0.000409"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.114298" 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-07-28T01:56:14.113971" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:14.115348" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:14.114534" elapsed="0.000882"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.115980" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:14.115599" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.116586" 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-07-28T01:56:14.116218" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.117153" 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-07-28T01:56:14.116784" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.117773" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:14.117387" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.118346" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:14.117989" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.118914" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840d10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:14.118601" elapsed="0.000409"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:14.111164" elapsed="0.007905"/>
</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-07-28T01:56:14.120532" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03a6890&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:14.120118" elapsed="0.000442"/>
</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-07-28T01:56:14.120880" elapsed="0.000297"/>
</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-07-28T01:56:14.121332" elapsed="0.000342"/>
</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-07-28T01:56:14.121865" elapsed="0.000312"/>
</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-07-28T01:56:14.122373" elapsed="0.000404"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:14.123271" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3842200&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-07-28T01:56:14.122937" elapsed="0.000362"/>
</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-07-28T01:56:14.123465" elapsed="0.000295"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:14.124359" 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-07-28T01:56:14.123915" elapsed="0.000513"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:14.125102" 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-07-28T01:56:14.124632" elapsed="0.000506"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:14.601171" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:14.601362" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:14.601661" 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-07-28T01:56:14.125274" elapsed="0.476455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.607185" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:14.602200" elapsed="0.005094"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3840d10&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-07-28T01:56:14.119712" elapsed="0.487726"/>
</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-07-28T01:56:14.119222" elapsed="0.488403"/>
</kw>
<var name="${flowfile}">f104.xml</var>
<status status="PASS" start="2026-07-28T01:56:14.107327" elapsed="0.500388"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.608938" level="INFO">f105.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:14.608278" elapsed="0.000767"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:14.613650" 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-07-28T01:56:14.613821" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:14.613397" elapsed="0.000455"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:14.614505" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a43b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:14.614008" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.614989" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:14.614695" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.615471" 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-07-28T01:56:14.615173" elapsed="0.000326"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:14.615939" 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-07-28T01:56:14.615656" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:14.616962" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:14.616120" elapsed="0.000876"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.617536" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:14.617172" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.618055" 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-07-28T01:56:14.617737" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.618679" 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-07-28T01:56:14.618301" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.619186" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:14.618877" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.619723" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:14.619387" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:14.620240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a43b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:14.619924" 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-07-28T01:56:14.613021" elapsed="0.007318"/>
</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-07-28T01:56:14.621866" level="INFO">${req} = &lt;Element 'flow' at 0x7868b03a6b10&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:14.621504" 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-07-28T01:56:14.622045" 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-07-28T01:56:14.622504" 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-07-28T01:56:14.622900" 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-07-28T01:56:14.623300" elapsed="0.000358"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:14.624146" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b03a6700&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-07-28T01:56:14.623855" 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-07-28T01:56:14.624325" elapsed="0.000312"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:14.625194" 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-07-28T01:56:14.624793" elapsed="0.000502"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:14.625887" 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-07-28T01:56:14.625447" elapsed="0.000471"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:15.103187" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:15.103328" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:15.103553" 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-07-28T01:56:14.626054" elapsed="0.477540"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.106995" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:15.103918" elapsed="0.003142"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03a43b0&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-07-28T01:56:14.620953" elapsed="0.486203"/>
</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-07-28T01:56:14.620505" elapsed="0.486731"/>
</kw>
<var name="${flowfile}">f105.xml</var>
<status status="PASS" start="2026-07-28T01:56:14.607972" elapsed="0.499316"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.108028" level="INFO">f106.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:15.107666" 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-07-28T01:56:15.113228" 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-07-28T01:56:15.113472" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:15.113025" elapsed="0.000489"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:15.114358" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bbf0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:15.113736" elapsed="0.000661"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.115074" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:15.114640" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.115737" 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-07-28T01:56:15.115325" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.116192" 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-07-28T01:56:15.115920" elapsed="0.000298"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:15.117164" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:15.116375" elapsed="0.000821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.117729" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:15.117366" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.118239" 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-07-28T01:56:15.117929" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.118837" 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-07-28T01:56:15.118514" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.119559" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:15.119044" elapsed="0.000563"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.120116" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:15.119760" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.120651" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372bbf0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:15.120320" 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-07-28T01:56:15.112519" elapsed="0.008234"/>
</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-07-28T01:56:15.122079" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3729b20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:15.121727" elapsed="0.000380"/>
</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-07-28T01:56:15.122256" 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-07-28T01:56:15.122693" 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-07-28T01:56:15.123128" 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-07-28T01:56:15.123539" elapsed="0.000341"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:15.124368" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a37284f0&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-07-28T01:56:15.124073" 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-07-28T01:56:15.124594" elapsed="0.000251"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:15.125392" 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-07-28T01:56:15.124993" elapsed="0.000481"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:15.126039" 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-07-28T01:56:15.125623" elapsed="0.000447"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:15.603708" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:15.604019" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:15.604296" 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-07-28T01:56:15.126202" elapsed="0.478160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.609526" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:15.604862" elapsed="0.004733"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a372bbf0&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-07-28T01:56:15.121349" elapsed="0.488343"/>
</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-07-28T01:56:15.120905" elapsed="0.488870"/>
</kw>
<var name="${flowfile}">f106.xml</var>
<status status="PASS" start="2026-07-28T01:56:15.107473" elapsed="0.502406"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.610707" level="INFO">f107.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:15.610299" elapsed="0.000530"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:15.616629" 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-07-28T01:56:15.616899" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:15.616352" elapsed="0.000592"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:15.617955" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6ca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:15.617217" elapsed="0.000826"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.618808" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:15.618274" elapsed="0.000575"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.619614" 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-07-28T01:56:15.619122" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:15.620329" 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-07-28T01:56:15.619878" elapsed="0.000489"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:15.622248" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:15.620664" elapsed="0.001630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.623133" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:15.622600" elapsed="0.000599"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.624049" 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-07-28T01:56:15.623490" elapsed="0.000621"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.624843" 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-07-28T01:56:15.624389" elapsed="0.000496"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.625379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:15.625036" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.625970" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:15.625627" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:15.626527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e6ca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:15.626169" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:15.615783" elapsed="0.010880"/>
</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-07-28T01:56:15.628125" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372b920&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:15.627719" elapsed="0.000434"/>
</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-07-28T01:56:15.628299" elapsed="0.000318"/>
</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-07-28T01:56:15.628805" elapsed="0.000275"/>
</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-07-28T01:56:15.629269" elapsed="0.000303"/>
</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-07-28T01:56:15.629727" elapsed="0.000378"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:15.630632" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372b6a0&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-07-28T01:56:15.630300" elapsed="0.000361"/>
</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-07-28T01:56:15.630811" elapsed="0.000283"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:15.631762" 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-07-28T01:56:15.631275" elapsed="0.000558"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:15.632500" 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-07-28T01:56:15.631981" elapsed="0.000552"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:16.105771" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:16.105998" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:16.106356" 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-07-28T01:56:15.632671" elapsed="0.473750"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.111849" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:16.106987" elapsed="0.004968"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e6ca0&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-07-28T01:56:15.627289" elapsed="0.484814"/>
</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-07-28T01:56:15.626818" elapsed="0.485480"/>
</kw>
<var name="${flowfile}">f107.xml</var>
<status status="PASS" start="2026-07-28T01:56:15.610057" elapsed="0.502338"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.113189" level="INFO">f108.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:16.112924" 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-07-28T01:56:16.116799" 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-07-28T01:56:16.116989" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:16.116643" elapsed="0.000377"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:16.117669" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:16.117173" elapsed="0.000525"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.118139" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:16.117854" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.118607" 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-07-28T01:56:16.118317" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.119058" 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-07-28T01:56:16.118786" elapsed="0.000299"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:16.121626" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:16.119237" elapsed="0.002421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.122159" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:16.121821" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.122677" 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-07-28T01:56:16.122353" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.123179" 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-07-28T01:56:16.122868" elapsed="0.000351"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.123686" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:16.123368" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.124192" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:16.123883" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.124779" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e5440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:16.124445" 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-07-28T01:56:16.116257" elapsed="0.008620"/>
</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-07-28T01:56:16.126185" level="INFO">${req} = &lt;Element 'flow' at 0x7868a372bbf0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:16.125826" 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-07-28T01:56:16.126356" 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-07-28T01:56:16.126792" elapsed="0.000234"/>
</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-07-28T01:56:16.127173" elapsed="0.000240"/>
</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-07-28T01:56:16.127575" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:16.128385" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372b510&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-07-28T01:56:16.128065" elapsed="0.000349"/>
</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-07-28T01:56:16.128580" elapsed="0.000248"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:16.129371" 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-07-28T01:56:16.128975" elapsed="0.000548"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:16.130100" 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-07-28T01:56:16.129673" elapsed="0.000458"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:16.606116" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:16.606317" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:16.606673" 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-07-28T01:56:16.130260" elapsed="0.476480"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.612248" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:16.607235" elapsed="0.005125"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e5440&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-07-28T01:56:16.125469" elapsed="0.487078"/>
</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-07-28T01:56:16.125025" elapsed="0.487649"/>
</kw>
<var name="${flowfile}">f108.xml</var>
<status status="PASS" start="2026-07-28T01:56:16.112761" elapsed="0.499995"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.613838" level="INFO">f109.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:16.613440" 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-07-28T01:56:16.617549" 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-07-28T01:56:16.617727" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:16.617371" elapsed="0.000386"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:16.618412" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a0c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:16.617917" elapsed="0.000527"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.618943" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:16.618632" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.619429" 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-07-28T01:56:16.619130" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:16.619946" 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-07-28T01:56:16.619645" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:16.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;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-07-28T01:56:16.620132" elapsed="0.001141"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.621819" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:16.621439" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.622416" 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-07-28T01:56:16.622092" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.622975" 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-07-28T01:56:16.622645" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.623516" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:16.623177" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.624056" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:16.623728" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:16.624604" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a0c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:16.624270" 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-07-28T01:56:16.616991" elapsed="0.007724"/>
</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-07-28T01:56:16.626134" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3728220&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:16.625752" elapsed="0.000411"/>
</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-07-28T01:56:16.626326" elapsed="0.000294"/>
</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-07-28T01:56:16.626788" 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-07-28T01:56:16.627226" elapsed="0.000279"/>
</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-07-28T01:56:16.627665" elapsed="0.000355"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:16.628485" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3729ee0&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-07-28T01:56:16.628178" elapsed="0.000336"/>
</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-07-28T01:56:16.628676" elapsed="0.000290"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:16.629574" 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-07-28T01:56:16.629129" elapsed="0.000518"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:16.630252" 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-07-28T01:56:16.629797" elapsed="0.000486"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:17.107318" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:17.107691" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:17.108009" 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-07-28T01:56:16.630427" elapsed="0.477650"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.114107" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:17.108603" elapsed="0.005611"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a372a0c0&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-07-28T01:56:16.625359" elapsed="0.488998"/>
</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-07-28T01:56:16.624892" elapsed="0.489629"/>
</kw>
<var name="${flowfile}">f109.xml</var>
<status status="PASS" start="2026-07-28T01:56:16.613104" elapsed="0.501496"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.115341" level="INFO">f110.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:17.114963" 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-07-28T01:56:17.120580" 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-07-28T01:56:17.120799" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:17.120340" elapsed="0.000501"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:17.121794" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5f30&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:17.121072" elapsed="0.000768"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.122511" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:17.122064" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.123064" 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-07-28T01:56:17.122780" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.123557" 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-07-28T01:56:17.123249" elapsed="0.000335"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:17.124681" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:17.123742" elapsed="0.000971"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.125227" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:17.124878" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.125812" 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-07-28T01:56:17.125426" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.126340" 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-07-28T01:56:17.126022" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.126856" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:17.126552" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.127375" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:17.127063" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.127917" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5f30&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:17.127591" 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-07-28T01:56:17.119827" elapsed="0.008188"/>
</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-07-28T01:56:17.129362" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3728130&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:17.128999" 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-07-28T01:56:17.129592" 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-07-28T01:56:17.130039" 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-07-28T01:56:17.130511" 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-07-28T01:56:17.130923" elapsed="0.000351"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:17.131729" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a372aed0&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-07-28T01:56:17.131433" 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-07-28T01:56:17.131920" elapsed="0.000252"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:17.132737" 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-07-28T01:56:17.132322" elapsed="0.000482"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:17.133380" 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-07-28T01:56:17.132960" elapsed="0.000451"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:17.609250" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:17.609448" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:17.609799" 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-07-28T01:56:17.133586" elapsed="0.476280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.615316" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:17.610438" elapsed="0.005044"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03a5f30&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-07-28T01:56:17.128637" elapsed="0.487003"/>
</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-07-28T01:56:17.128168" elapsed="0.487597"/>
</kw>
<var name="${flowfile}">f110.xml</var>
<status status="PASS" start="2026-07-28T01:56:17.114773" elapsed="0.501090"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.617051" level="INFO">f113.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:17.616430" elapsed="0.000726"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:17.621780" 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-07-28T01:56:17.622045" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:17.621634" elapsed="0.000454"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:17.622813" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6430&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:17.622242" elapsed="0.000602"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.623337" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:17.623003" elapsed="0.000361"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.623830" 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-07-28T01:56:17.623544" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:17.624298" 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-07-28T01:56:17.624012" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:17.625576" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:17.624494" elapsed="0.001114"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.626179" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:17.625785" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.626759" 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-07-28T01:56:17.626418" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.627338" 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-07-28T01:56:17.626968" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.628003" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:17.627672" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.628601" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:17.628239" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:17.629425" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a6430&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:17.628976" 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-07-28T01:56:17.621245" elapsed="0.008396"/>
</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-07-28T01:56:17.631490" level="INFO">${req} = &lt;Element 'flow' at 0x7868a37293f0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:17.631070" elapsed="0.000449"/>
</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-07-28T01:56:17.631675" elapsed="0.000303"/>
</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-07-28T01:56:17.632140" elapsed="0.000276"/>
</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-07-28T01:56:17.632581" elapsed="0.000295"/>
</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-07-28T01:56:17.633037" elapsed="0.000384"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:17.633916" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a37286d0&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-07-28T01:56:17.633633" 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-07-28T01:56:17.634185" elapsed="0.000313"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:17.635093" 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-07-28T01:56:17.634648" elapsed="0.000560"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:17.635851" 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-07-28T01:56:17.635395" elapsed="0.000524"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:18.110593" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:18.110794" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:18.111172" 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-07-28T01:56:17.636062" elapsed="0.475177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.116793" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:18.111884" elapsed="0.004977"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b03a6430&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-07-28T01:56:17.630677" elapsed="0.486279"/>
</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-07-28T01:56:17.629851" elapsed="0.487186"/>
</kw>
<var name="${flowfile}">f113.xml</var>
<status status="PASS" start="2026-07-28T01:56:17.616125" elapsed="0.500962"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.117875" level="INFO">f201.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:18.117512" 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-07-28T01:56:18.123225" 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-07-28T01:56:18.123519" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:18.123021" elapsed="0.000541"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:18.124517" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840f40&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:18.123828" elapsed="0.000732"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.125235" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:18.124781" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.125955" 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-07-28T01:56:18.125560" elapsed="0.000480"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.126757" 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-07-28T01:56:18.126258" elapsed="0.000537"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:18.127969" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:18.127012" elapsed="0.000989"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.128552" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:18.128163" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.129131" 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-07-28T01:56:18.128811" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.129710" 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-07-28T01:56:18.129329" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.130260" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:18.129909" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.130851" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:18.130478" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.131413" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840f40&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:18.131057" elapsed="0.000414"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:18.122432" elapsed="0.009098"/>
</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-07-28T01:56:18.132928" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3840c20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:18.132577" 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-07-28T01:56:18.133142" 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-07-28T01:56:18.133612" elapsed="0.000279"/>
</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-07-28T01:56:18.134043" elapsed="0.000288"/>
</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-07-28T01:56:18.134529" elapsed="0.000376"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:18.135576" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3842c00&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-07-28T01:56:18.135101" elapsed="0.000505"/>
</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-07-28T01:56:18.135758" elapsed="0.000288"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:18.136637" 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-07-28T01:56:18.136196" elapsed="0.000509"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:18.137305" 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-07-28T01:56:18.136853" elapsed="0.000484"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:18.611422" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:18.611828" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:18.612096" 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-07-28T01:56:18.137487" elapsed="0.474673"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.617037" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:18.612767" elapsed="0.004334"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3840f40&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-07-28T01:56:18.132166" elapsed="0.485074"/>
</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-07-28T01:56:18.131683" elapsed="0.485636"/>
</kw>
<var name="${flowfile}">f201.xml</var>
<status status="PASS" start="2026-07-28T01:56:18.117304" elapsed="0.500065"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.618141" level="INFO">f202.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:18.617738" elapsed="0.000467"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:18.623653" 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-07-28T01:56:18.623818" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:18.623392" elapsed="0.000456"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:18.624505" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06933d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:18.624003" elapsed="0.000533"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.625023" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:18.624692" elapsed="0.000358"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.625534" 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-07-28T01:56:18.625240" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:18.626035" 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-07-28T01:56:18.625757" elapsed="0.000304"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:18.627073" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:18.626252" elapsed="0.000878"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.627685" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:18.627296" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.628239" 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-07-28T01:56:18.627886" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.628821" 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-07-28T01:56:18.628487" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.629515" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:18.629148" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.630059" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:18.629748" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:18.630618" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06933d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:18.630255" 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-07-28T01:56:18.622810" elapsed="0.007906"/>
</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-07-28T01:56:18.632158" level="INFO">${req} = &lt;Element 'flow' at 0x7868b0309fd0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:18.631804" elapsed="0.000419"/>
</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-07-28T01:56:18.632372" elapsed="0.000318"/>
</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-07-28T01:56:18.632841" elapsed="0.000485"/>
</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-07-28T01:56:18.633535" elapsed="0.000297"/>
</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-07-28T01:56:18.634026" elapsed="0.000343"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:18.634855" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b0309760&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-07-28T01:56:18.634542" elapsed="0.000340"/>
</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-07-28T01:56:18.635033" elapsed="0.000303"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:18.635961" 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-07-28T01:56:18.635504" elapsed="0.000525"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:18.636640" 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-07-28T01:56:18.636178" elapsed="0.000495"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:19.126706" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:19.126899" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:19.127185" 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-07-28T01:56:18.636805" elapsed="0.490446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.132733" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:19.127818" elapsed="0.004982"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b06933d0&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-07-28T01:56:18.631398" elapsed="0.501497"/>
</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-07-28T01:56:18.630903" elapsed="0.502085"/>
</kw>
<var name="${flowfile}">f202.xml</var>
<status status="PASS" start="2026-07-28T01:56:18.617553" elapsed="0.515486"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.133812" level="INFO">f203.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:19.133399" elapsed="0.000480"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:19.138990" 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-07-28T01:56:19.139293" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:19.138767" elapsed="0.000570"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:19.140286" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37313a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:19.139585" elapsed="0.000743"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.140925" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:19.140604" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.141409" 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-07-28T01:56:19.141122" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.141917" 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-07-28T01:56:19.141631" elapsed="0.000313"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:19.142862" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:19.142101" elapsed="0.000793"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.143400" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:19.143060" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.143980" 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-07-28T01:56:19.143634" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.144534" 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-07-28T01:56:19.144182" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.145052" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:19.144741" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.145609" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:19.145267" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.146148" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37313a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:19.145815" 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-07-28T01:56:19.138222" elapsed="0.008030"/>
</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-07-28T01:56:19.147893" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6d3a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:19.147265" elapsed="0.000658"/>
</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-07-28T01:56:19.148075" elapsed="0.000276"/>
</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-07-28T01:56:19.148522" elapsed="0.000249"/>
</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-07-28T01:56:19.148921" 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-07-28T01:56:19.149328" elapsed="0.000360"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:19.150116" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6fa60&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-07-28T01:56:19.149844" 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-07-28T01:56:19.150293" elapsed="0.000265"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:19.151094" 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-07-28T01:56:19.150707" elapsed="0.000490"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:19.151815" 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-07-28T01:56:19.151346" elapsed="0.000500"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:19.615050" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:19.615241" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:19.615555" 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-07-28T01:56:19.151980" elapsed="0.463653"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.620972" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:19.616170" elapsed="0.004868"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b37313a0&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-07-28T01:56:19.146894" elapsed="0.474237"/>
</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-07-28T01:56:19.146416" elapsed="0.474792"/>
</kw>
<var name="${flowfile}">f203.xml</var>
<status status="PASS" start="2026-07-28T01:56:19.133208" elapsed="0.488063"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.622041" level="INFO">f204.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:19.621661" 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-07-28T01:56:19.627188" 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-07-28T01:56:19.627421" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:19.626980" elapsed="0.000506"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:19.628476" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e8e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:19.627725" elapsed="0.000796"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.629094" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:19.628798" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.629606" 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-07-28T01:56:19.629311" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:19.630057" 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-07-28T01:56:19.629785" elapsed="0.000336"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:19.631061" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:19.630277" elapsed="0.000816"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.631648" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:19.631257" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.632213" 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-07-28T01:56:19.631883" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.632885" 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-07-28T01:56:19.632525" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.633435" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:19.633122" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.634043" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:19.633690" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:19.634570" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e8e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:19.634243" 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-07-28T01:56:19.626437" elapsed="0.008277"/>
</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-07-28T01:56:19.636320" level="INFO">${req} = &lt;Element 'flow' at 0x7868a3f6e7a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:19.635936" 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-07-28T01:56:19.636512" elapsed="0.000311"/>
</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-07-28T01:56:19.636978" elapsed="0.000280"/>
</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-07-28T01:56:19.637409" 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-07-28T01:56:19.637865" elapsed="0.000338"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:19.638688" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a3f6c9a0&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-07-28T01:56:19.638397" 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-07-28T01:56:19.638865" elapsed="0.000288"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:19.639741" 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-07-28T01:56:19.639304" elapsed="0.000504"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:19.640425" 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-07-28T01:56:19.639957" elapsed="0.000514"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:20.116179" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:20.116440" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:20.116809" 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-07-28T01:56:19.640605" elapsed="0.476268"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.122098" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:20.117330" elapsed="0.004832"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6e8e0&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-07-28T01:56:19.635338" elapsed="0.486910"/>
</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-07-28T01:56:19.634865" elapsed="0.487457"/>
</kw>
<var name="${flowfile}">f204.xml</var>
<status status="PASS" start="2026-07-28T01:56:19.621445" elapsed="0.500929"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.123143" level="INFO">f205.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:20.122734" elapsed="0.000474"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:20.128431" 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-07-28T01:56:20.128694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:20.128191" elapsed="0.000546"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:20.129701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7600&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:20.129006" elapsed="0.000731"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.130173" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:20.129892" elapsed="0.000307"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.130679" 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-07-28T01:56:20.130351" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.131179" 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-07-28T01:56:20.130865" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:20.132196" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:20.131359" elapsed="0.000870"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.132788" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:20.132391" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.133302" 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-07-28T01:56:20.132990" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.133902" 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-07-28T01:56:20.133549" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.134634" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:20.134098" elapsed="0.000584"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.135190" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:20.134835" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.135754" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e7600&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:20.135426" 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-07-28T01:56:20.127663" elapsed="0.008226"/>
</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-07-28T01:56:20.137342" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e6f20&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:20.136943" 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-07-28T01:56:20.137538" elapsed="0.000341"/>
</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-07-28T01:56:20.138033" 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-07-28T01:56:20.138478" elapsed="0.000328"/>
</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-07-28T01:56:20.138961" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:20.139780" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868a36e6a20&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-07-28T01:56:20.139508" 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-07-28T01:56:20.139993" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:20.140891" 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-07-28T01:56:20.140423" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:20.141592" 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-07-28T01:56:20.141109" elapsed="0.000551"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:20.618029" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:20.618260" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:20.618637" 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-07-28T01:56:20.141799" elapsed="0.476963"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.624543" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:20.619256" elapsed="0.005392"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e7600&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-07-28T01:56:20.136487" elapsed="0.488364"/>
</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-07-28T01:56:20.136042" elapsed="0.488959"/>
</kw>
<var name="${flowfile}">f205.xml</var>
<status status="PASS" start="2026-07-28T01:56:20.122548" elapsed="0.502539"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.626559" level="INFO">f206.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:20.625766" elapsed="0.000903"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:20.632362" 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-07-28T01:56:20.632540" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:20.632180" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:20.633291" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:20.632766" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.633823" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:20.633498" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.634321" 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-07-28T01:56:20.634006" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:20.634833" 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-07-28T01:56:20.634553" elapsed="0.000306"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:20.636097" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:20.635050" elapsed="0.001124"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.636736" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:20.636343" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.637312" 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-07-28T01:56:20.636939" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.637881" 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-07-28T01:56:20.637561" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.638444" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:20.638076" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.639047" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:20.638699" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:20.639574" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a0400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:20.639249" 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-07-28T01:56:20.631762" elapsed="0.007911"/>
</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-07-28T01:56:20.641150" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f1530&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:20.640713" elapsed="0.000465"/>
</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-07-28T01:56:20.641326" 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-07-28T01:56:20.641799" 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-07-28T01:56:20.642187" 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-07-28T01:56:20.642628" elapsed="0.000336"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:20.643379" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f30b0&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-07-28T01:56:20.643115" 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-07-28T01:56:20.643604" elapsed="0.000247"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:20.644628" 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-07-28T01:56:20.644178" elapsed="0.000556"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:20.645367" 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-07-28T01:56:20.644921" elapsed="0.000477"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:21.120422" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:21.120715" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:21.121041" 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-07-28T01:56:20.645581" elapsed="0.475523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.126842" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:21.121635" elapsed="0.005375"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b06a0400&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-07-28T01:56:20.640302" elapsed="0.486850"/>
</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-07-28T01:56:20.639863" elapsed="0.487410"/>
</kw>
<var name="${flowfile}">f206.xml</var>
<status status="PASS" start="2026-07-28T01:56:20.625402" elapsed="0.501952"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.128769" level="INFO">f209.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:21.128057" elapsed="0.000914"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:21.135496" 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-07-28T01:56:21.135704" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:21.135337" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:21.136402" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:21.135887" elapsed="0.000544"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.136940" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:21.136601" elapsed="0.000365"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.137427" 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-07-28T01:56:21.137153" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.137976" 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-07-28T01:56:21.137663" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:21.139171" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:21.138155" elapsed="0.001048"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.139780" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:21.139398" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.140382" 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-07-28T01:56:21.140063" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.141001" 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-07-28T01:56:21.140632" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.141553" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:21.141196" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.142131" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:21.141788" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.142694" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:21.142330" elapsed="0.000409"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:21.134949" elapsed="0.007844"/>
</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-07-28T01:56:21.144287" level="INFO">${req} = &lt;Element 'flow' at 0x7868b05f36a0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:21.143858" elapsed="0.000460"/>
</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-07-28T01:56:21.144479" elapsed="0.000300"/>
</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-07-28T01:56:21.145002" 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-07-28T01:56:21.145429" 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-07-28T01:56:21.145876" elapsed="0.000339"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:21.146694" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b05f1210&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-07-28T01:56:21.146406" elapsed="0.000352"/>
</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-07-28T01:56:21.146909" elapsed="0.000278"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:21.147772" 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-07-28T01:56:21.147333" elapsed="0.000543"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:21.148496" 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-07-28T01:56:21.148025" elapsed="0.000503"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:21.622217" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:21.622669" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:21.623081" 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-07-28T01:56:21.148695" elapsed="0.474453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.629082" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:21.623771" elapsed="0.005383"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f66660&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-07-28T01:56:21.143464" elapsed="0.485787"/>
</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-07-28T01:56:21.142978" elapsed="0.486398"/>
</kw>
<var name="${flowfile}">f209.xml</var>
<status status="PASS" start="2026-07-28T01:56:21.127695" elapsed="0.501740"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.630308" level="INFO">f214.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:21.629886" elapsed="0.000489"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:21.636210" 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-07-28T01:56:21.636500" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:21.635990" elapsed="0.000556"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:21.637445" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65d00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:21.636820" elapsed="0.000686"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.638171" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:21.637721" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.638820" 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-07-28T01:56:21.638419" elapsed="0.000437"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:21.639520" 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-07-28T01:56:21.639065" elapsed="0.000493"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:21.642499" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:21.639835" elapsed="0.002696"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.643037" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:21.642699" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.643614" 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-07-28T01:56:21.643278" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.644126" 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-07-28T01:56:21.643813" elapsed="0.000354"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.644681" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:21.644317" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.645181" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:21.644877" elapsed="0.000349"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:21.645707" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65d00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:21.645375" 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-07-28T01:56:21.635351" elapsed="0.010455"/>
</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-07-28T01:56:21.647231" level="INFO">${req} = &lt;Element 'flow' at 0x7868b06a07c0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:21.646838" elapsed="0.000421"/>
</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-07-28T01:56:21.647434" 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-07-28T01:56:21.647907" 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-07-28T01:56:21.648402" elapsed="0.000307"/>
</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-07-28T01:56:21.648864" elapsed="0.000345"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:21.649650" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a1c10&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-07-28T01:56:21.649363" 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-07-28T01:56:21.649825" elapsed="0.000243"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:21.650617" 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-07-28T01:56:21.650219" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:21.651265" 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-07-28T01:56:21.650834" elapsed="0.000462"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:22.122848" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:22.123029" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:22.123324" 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-07-28T01:56:21.651443" elapsed="0.471954"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.128631" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:22.123939" elapsed="0.004793"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f65d00&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-07-28T01:56:21.646464" elapsed="0.482405"/>
</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-07-28T01:56:21.645955" elapsed="0.483051"/>
</kw>
<var name="${flowfile}">f214.xml</var>
<status status="PASS" start="2026-07-28T01:56:21.629633" elapsed="0.499458"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.130275" level="INFO">f218.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:22.129682" 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-07-28T01:56:22.137986" 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-07-28T01:56:22.138152" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:22.137837" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:22.138855" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:22.138401" elapsed="0.000484"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.139335" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:22.139042" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.139803" 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-07-28T01:56:22.139530" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.140260" 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-07-28T01:56:22.139982" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:22.141302" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:22.140475" elapsed="0.000859"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.141863" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:22.141523" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.142379" 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-07-28T01:56:22.142065" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.142915" 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-07-28T01:56:22.142593" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.143422" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:22.143111" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.143974" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:22.143644" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.144538" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05f0860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:22.144180" elapsed="0.000402"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:22.137256" elapsed="0.007383"/>
</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-07-28T01:56:22.145959" level="INFO">${req} = &lt;Element 'flow' at 0x7868b06a17b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:22.145632" 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-07-28T01:56:22.146133" 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-07-28T01:56:22.146565" 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-07-28T01:56:22.146988" 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-07-28T01:56:22.147397" elapsed="0.000359"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:22.148209" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a2160&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-07-28T01:56:22.147912" elapsed="0.000329"/>
</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-07-28T01:56:22.148392" elapsed="0.000284"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:22.149186" 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-07-28T01:56:22.148826" elapsed="0.000420"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:22.149790" 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-07-28T01:56:22.149392" elapsed="0.000463"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:22.623665" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:22.623853" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:22.624160" 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-07-28T01:56:22.149990" elapsed="0.474235"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.629219" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:22.624712" elapsed="0.004580"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868b05f0860&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-07-28T01:56:22.145226" elapsed="0.484167"/>
</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-07-28T01:56:22.144790" elapsed="0.484711"/>
</kw>
<var name="${flowfile}">f218.xml</var>
<status status="PASS" start="2026-07-28T01:56:22.129342" elapsed="0.500215"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.630400" level="INFO">f219.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:22.630023" elapsed="0.000463"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:56:22.635655" 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-07-28T01:56:22.635891" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:22.635412" elapsed="0.000520"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:22.636769" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e48b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:22.636147" elapsed="0.000664"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.637443" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:22.637038" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.638107" 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-07-28T01:56:22.637724" elapsed="0.000419"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:22.638758" 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-07-28T01:56:22.638355" elapsed="0.000439"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:22.640099" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:22.639006" elapsed="0.001125"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.640645" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:22.640294" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.641158" 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-07-28T01:56:22.640843" elapsed="0.000358"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.641688" 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-07-28T01:56:22.641353" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.642194" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:22.641883" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.642798" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:22.642473" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:22.643325" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e48b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:22.643009" 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-07-28T01:56:22.634892" elapsed="0.008531"/>
</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-07-28T01:56:22.644750" level="INFO">${req} = &lt;Element 'flow' at 0x7868b06a17b0&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:22.644388" 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-07-28T01:56:22.644940" 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-07-28T01:56:22.645365" 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-07-28T01:56:22.645774" 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-07-28T01:56:22.646170" elapsed="0.000354"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:22.646962" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a1580&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-07-28T01:56:22.646681" 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-07-28T01:56:22.647142" elapsed="0.000245"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:22.647936" 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-07-28T01:56:22.647562" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:22.648558" 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-07-28T01:56:22.648145" elapsed="0.000444"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:23.124603" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:23.124738" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:23.124967" 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-07-28T01:56:22.648719" elapsed="0.476290"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.128441" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:23.125354" elapsed="0.003167"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a36e48b0&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-07-28T01:56:22.644033" elapsed="0.484583"/>
</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-07-28T01:56:22.643599" elapsed="0.485098"/>
</kw>
<var name="${flowfile}">f219.xml</var>
<status status="PASS" start="2026-07-28T01:56:22.629807" elapsed="0.498942"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.129396" level="INFO">f220.xml</msg>
<arg>${flowfile}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:23.129096" 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-07-28T01:56:23.133817" 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-07-28T01:56:23.134043" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:23.133637" elapsed="0.000440"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:23.134805" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:23.134270" elapsed="0.000570"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:23.135368" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:23.135037" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:23.135938" 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-07-28T01:56:23.135610" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:23.136493" 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-07-28T01:56:23.136152" elapsed="0.000372"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:23.137757" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:23.136707" elapsed="0.001087"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.138387" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:23.137991" elapsed="0.000447"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.139056" 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-07-28T01:56:23.138652" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.139689" 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-07-28T01:56:23.139292" elapsed="0.000451"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.140286" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:23.139930" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.140905" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:23.140538" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.141526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:23.141144" elapsed="0.000433"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:23.133176" elapsed="0.008470"/>
</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-07-28T01:56:23.143239" level="INFO">${req} = &lt;Element 'flow' at 0x7868a36e6d40&gt;</msg>
<var>${req}</var>
<arg>${xmlroot}</arg>
<doc>Returns a copy of the specified element.</doc>
<status status="PASS" start="2026-07-28T01:56:23.142845" elapsed="0.000427"/>
</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-07-28T01:56:23.143469" elapsed="0.000358"/>
</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-07-28T01:56:23.144011" 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-07-28T01:56:23.144490" elapsed="0.000304"/>
</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-07-28T01:56:23.144977" elapsed="0.000413"/>
</kw>
<kw name="Get Element" owner="XML">
<msg time="2026-07-28T01:56:23.145920" level="INFO">${nodeelm} = &lt;Element 'node' at 0x7868b06a1490&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-07-28T01:56:23.145594" elapsed="0.000436"/>
</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-07-28T01:56:23.146215" elapsed="0.000325"/>
</kw>
<kw name="Log Element" owner="XML">
<msg time="2026-07-28T01:56:23.147181" 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-07-28T01:56:23.146730" elapsed="0.000525"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:23.147926" 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-07-28T01:56:23.147435" elapsed="0.000528"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:23.626135" level="INFO">POST Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.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-07-28T01:56:23.626279" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/operations/sal-flow:remove-flow 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:23.626544" 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-07-28T01:56:23.148126" elapsed="0.478468"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:23.630400" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:23.626971" elapsed="0.003527"/>
</kw>
<arg>${switch_idx}</arg>
<arg>${xmlroot}</arg>
<doc>Deletes a flow by using remove-flow opearation. &lt;Element 'flow' at 0x7868a3f6c400&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-07-28T01:56:23.142375" elapsed="0.488230"/>
</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-07-28T01:56:23.141832" elapsed="0.488870"/>
</kw>
<var name="${flowfile}">f220.xml</var>
<status status="PASS" start="2026-07-28T01:56:23.128922" elapsed="0.501845"/>
</iter>
<var>${flowfile}</var>
<value>@{flowlist0}</value>
<status status="PASS" start="2026-07-28T01:55:58.501018" elapsed="25.129816"/>
</for>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.631796" 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-07-28T01:56:23.631086" elapsed="3.000948"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:56:26.637417" 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-07-28T01:56:26.632536" elapsed="0.004963"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:56:26.662679" level="INFO">*** s1 ------------------------------------------------------------------------
 cookie=0xa, duration=132.727s, table=0, n_packets=19, n_bytes=1462, 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-07-28T01:56:26.637683" elapsed="0.025094"/>
</kw>
<doc>Delete all flows and waits for SM to collect data</doc>
<status status="PASS" start="2026-07-28T01:55:58.500584" elapsed="28.162410"/>
</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-07-28T01:56:26.674926" 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-07-28T01:56:26.675120" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.674754" elapsed="0.000461"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:26.675922" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd00&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:26.675394" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.676424" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:26.676118" elapsed="0.000347"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.676933" 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-07-28T01:56:26.676641" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.677405" 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-07-28T01:56:26.677122" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.678553" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:26.677613" elapsed="0.000973"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.679131" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.678763" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.679699" 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-07-28T01:56:26.679334" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.680245" 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-07-28T01:56:26.679908" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.680794" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.680470" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.681341" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:26.681008" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.681911" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6dd00&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.681560" 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-07-28T01:56:26.674359" elapsed="0.007655"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.682681" 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-07-28T01:56:26.682206" elapsed="0.000506"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.683131" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.682880" 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-07-28T01:56:26.691185" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.690863" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.697087" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.698014" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:26.698240" 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-07-28T01:56:26.691355" elapsed="0.006923"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.698922" 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-07-28T01:56:26.698552" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.702679" 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-07-28T01:56:26.699207" elapsed="0.003552"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:26.705576" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T01:56:26.702886" elapsed="0.002827"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.702842" 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-07-28T01:56:26.705977" 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-07-28T01:56:26.706314" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.706108" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:26.706084" elapsed="0.000341"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.706494" elapsed="0.000022"/>
</return>
<msg time="2026-07-28T01:56:26.708229" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:26.708287" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:26.690528" elapsed="0.017792"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.710602" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.708922" elapsed="0.001728"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.708902" elapsed="0.001772"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.711253" 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-07-28T01:56:26.710836" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.711847" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.711472" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.711926" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:26.712114" 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-07-28T01:56:26.708568" 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-07-28T01:56:26.712310" 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-07-28T01:56:26.689880" elapsed="0.022939"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.720992" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.720685" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.725963" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.726145" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:26.726277" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:26.721162" elapsed="0.005145"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.726771" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:26.726495" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.729252" 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-07-28T01:56:26.726962" elapsed="0.002400"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.732089" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.729462" elapsed="0.002697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.729417" elapsed="0.002773"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.736430" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:26.736516" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:26.732442" elapsed="0.004107"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:26.739274" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.736659" elapsed="0.002694"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.736632" elapsed="0.002755"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:26.739432" elapsed="0.000061"/>
</return>
<msg time="2026-07-28T01:56:26.739783" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:26.739844" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:26.720277" elapsed="0.019598"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.743268" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.740779" elapsed="0.002553"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.740753" elapsed="0.002609"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.744269" 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-07-28T01:56:26.743644" elapsed="0.000708"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.745195" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.744633" elapsed="0.000599"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.745302" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:26.745631" 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-07-28T01:56:26.740231" elapsed="0.005436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.745868" elapsed="0.000437"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.719640" elapsed="0.026729"/>
</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-07-28T01:56:26.670926" elapsed="0.075500"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:26.663539" elapsed="0.083065"/>
</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-07-28T01:56:26.758622" 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-07-28T01:56:26.758781" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.758442" elapsed="0.000418"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:26.759576" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063e110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:26.759021" elapsed="0.000585"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.760162" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:26.759824" elapsed="0.000422"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.760776" 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-07-28T01:56:26.760408" elapsed="0.000396"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.761253" 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-07-28T01:56:26.760960" elapsed="0.000371"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.762581" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:26.761542" elapsed="0.001077"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.763215" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.762807" elapsed="0.000491"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.763901" 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-07-28T01:56:26.763527" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.764527" 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-07-28T01:56:26.764098" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.765083" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.764764" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.765756" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:26.765358" elapsed="0.000444"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.766323" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063e110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.765958" 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-07-28T01:56:26.757774" elapsed="0.008649"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.767066" 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-07-28T01:56:26.766621" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.767556" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.767250" 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-07-28T01:56:26.776406" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.776069" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.781327" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.781970" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:26.782079" 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-07-28T01:56:26.776634" elapsed="0.005471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.782624" 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-07-28T01:56:26.782306" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.785532" 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-07-28T01:56:26.782876" elapsed="0.002746"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:26.787666" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:56:26.785699" elapsed="0.002045"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.785677" elapsed="0.002093"/>
</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-07-28T01:56:26.787919" 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-07-28T01:56:26.788253" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.788054" elapsed="0.000262"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:26.788036" elapsed="0.000304"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.788374" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:26.791066" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:26.791131" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:26.775688" elapsed="0.015520"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.794815" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.792087" elapsed="0.002793"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.792061" elapsed="0.002850"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.795902" 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-07-28T01:56:26.795172" elapsed="0.000771"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.796872" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.796176" elapsed="0.000735"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.796982" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:56:26.797284" 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-07-28T01:56:26.791558" elapsed="0.005762"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.797641" elapsed="0.000673"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.774986" elapsed="0.023421"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.807254" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.806894" elapsed="0.000388"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.812301" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.812711" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:26.812833" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:26.807414" elapsed="0.005445"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.813334" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:26.813025" elapsed="0.000377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.815764" 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-07-28T01:56:26.813569" elapsed="0.002248"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.817790" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.815888" elapsed="0.001954"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.815868" elapsed="0.001997"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.821473" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:26.821542" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:26.818009" elapsed="0.003565"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:26.824353" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.821684" elapsed="0.002748"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.821656" elapsed="0.002830"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:26.824586" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:26.824872" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:26.824933" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:26.806470" elapsed="0.018495"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.828478" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.825952" elapsed="0.002593"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.825926" elapsed="0.002651"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.829415" 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-07-28T01:56:26.828791" elapsed="0.000682"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.830293" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.829755" elapsed="0.000631"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.830482" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:56:26.830789" 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-07-28T01:56:26.825389" elapsed="0.005436"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.831098" elapsed="0.000647"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.805731" elapsed="0.026111"/>
</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-07-28T01:56:26.754162" elapsed="0.077780"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:26.746893" elapsed="0.085177"/>
</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-07-28T01:56:26.844132" 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-07-28T01:56:26.844328" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.843985" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:26.845030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:26.844528" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.845516" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:26.845216" elapsed="0.000367"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.846015" 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-07-28T01:56:26.845741" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.846552" 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-07-28T01:56:26.846244" elapsed="0.000375"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.847661" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:26.846774" elapsed="0.000956"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.848317" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.847897" elapsed="0.000466"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.848905" 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-07-28T01:56:26.848536" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.849485" 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-07-28T01:56:26.849100" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.850038" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.849717" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.850676" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:26.850284" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.851296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.850969" 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-07-28T01:56:26.843591" elapsed="0.007803"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.852075" 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-07-28T01:56:26.851629" elapsed="0.000494"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.852629" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.852325" 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-07-28T01:56:26.860861" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.860531" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.866051" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.866862" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:26.867014" 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-07-28T01:56:26.861022" elapsed="0.006030"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.867711" 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-07-28T01:56:26.867320" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.871435" 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-07-28T01:56:26.867995" elapsed="0.003539"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:26.874340" elapsed="0.000048"/>
</return>
<status status="PASS" start="2026-07-28T01:56:26.871641" elapsed="0.002803"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.871612" elapsed="0.002900"/>
</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-07-28T01:56:26.874737" 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-07-28T01:56:26.875062" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.874869" elapsed="0.000265"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:26.874846" elapsed="0.000320"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.875211" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:26.877585" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:26.877650" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:26.860183" elapsed="0.017498"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.881105" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.878517" elapsed="0.002654"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.878487" elapsed="0.002716"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.882102" 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-07-28T01:56:26.881497" elapsed="0.000644"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.883010" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.882479" elapsed="0.000576"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.883140" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:56:26.883403" 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-07-28T01:56:26.878002" elapsed="0.005438"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.883735" elapsed="0.000579"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.859595" elapsed="0.024817"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.892918" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.892595" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.897885" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.898068" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:26.898191" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:26.893094" elapsed="0.005126"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.898675" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:26.898385" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.900987" 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-07-28T01:56:26.898871" elapsed="0.002173"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.902946" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.901123" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.901101" elapsed="0.001918"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.905873" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:26.905939" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:26.903176" elapsed="0.002796"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:26.908608" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.906087" elapsed="0.002626"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.906055" elapsed="0.002704"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:26.908809" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:56:26.909089" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:26.909150" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:26.892186" elapsed="0.016996"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.912335" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.910019" elapsed="0.002379"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.909993" elapsed="0.002446"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.913298" 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-07-28T01:56:26.912703" elapsed="0.000633"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.914126" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.913607" elapsed="0.000556"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.914234" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:26.914596" 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-07-28T01:56:26.909531" elapsed="0.005104"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.914862" elapsed="0.000622"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.891529" elapsed="0.024052"/>
</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-07-28T01:56:26.839977" elapsed="0.075688"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:26.832377" elapsed="0.083474"/>
</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-07-28T01:56:26.927433" 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-07-28T01:56:26.927609" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.927283" elapsed="0.000355"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:26.928252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06922f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:26.927808" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.928785" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:26.928489" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.929258" 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-07-28T01:56:26.928968" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:26.929742" 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-07-28T01:56:26.929438" elapsed="0.000331"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.930781" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:26.929922" elapsed="0.000891"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.931337" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.930988" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.931900" 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-07-28T01:56:26.931563" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.932492" 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-07-28T01:56:26.932115" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.933033" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.932695" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.933589" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:26.933236" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.934133" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06922f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:26.933793" 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-07-28T01:56:26.926935" elapsed="0.007302"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.934818" 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-07-28T01:56:26.934391" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.935266" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:26.935016" elapsed="0.000360"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.943443" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.943120" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.948235" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.948840" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:26.948949" 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-07-28T01:56:26.943619" elapsed="0.005357"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.949418" 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-07-28T01:56:26.949143" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.952097" 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-07-28T01:56:26.949631" elapsed="0.002520"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:26.954629" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:56:26.952229" elapsed="0.002513"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.952207" elapsed="0.002574"/>
</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-07-28T01:56:26.954988" 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-07-28T01:56:26.955322" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.955117" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:26.955094" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.955500" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:56:26.957950" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:26.958027" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:26.942785" elapsed="0.015278"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.961225" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.958890" elapsed="0.002400"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.958863" elapsed="0.002458"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.962157" 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-07-28T01:56:26.961553" elapsed="0.000645"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.962977" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.962430" elapsed="0.000591"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.963093" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:26.963350" 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-07-28T01:56:26.958371" elapsed="0.005057"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.963708" 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-07-28T01:56:26.942183" elapsed="0.022056"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.972360" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:26.972047" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:26.977114" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:26.977334" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:26.977449" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:26.972539" elapsed="0.004959"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.977926" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:26.977663" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.980168" 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-07-28T01:56:26.978116" elapsed="0.002103"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.982060" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.980292" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.980272" elapsed="0.001861"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:26.985358" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:26.985422" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:26.982276" elapsed="0.003200"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:26.988005" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:26.985590" elapsed="0.002495"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.985563" elapsed="0.002555"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:26.988165" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:26.988438" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:26.988522" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:26.971655" elapsed="0.016900"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:26.991676" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:26.989374" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:26.989348" elapsed="0.002423"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.992572" 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-07-28T01:56:26.991981" elapsed="0.000630"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:26.993341" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:26.992842" elapsed="0.000535"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:26.993450" elapsed="0.000063"/>
</return>
<msg time="2026-07-28T01:56:26.993730" 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-07-28T01:56:26.988901" elapsed="0.004866"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:26.993990" elapsed="0.000567"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:26.970970" elapsed="0.023709"/>
</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-07-28T01:56:26.923572" elapsed="0.071198"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:26.916276" elapsed="0.078666"/>
</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-07-28T01:56:27.006127" 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-07-28T01:56:27.006282" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.005983" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.006950" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840fe0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.006521" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.007482" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.007133" elapsed="0.000378"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.007953" 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-07-28T01:56:27.007666" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.008410" 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-07-28T01:56:27.008134" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.011330" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.008604" elapsed="0.002757"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.011877" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.011537" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.012394" 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-07-28T01:56:27.012074" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.012929" 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-07-28T01:56:27.012604" elapsed="0.000365"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.013430" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.013119" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.013960" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.013645" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.014527" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3840fe0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.014169" elapsed="0.000401"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:27.005651" elapsed="0.008976"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.015159" 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-07-28T01:56:27.014777" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.015623" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.015353" 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-07-28T01:56:27.023714" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.023368" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.028580" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.029354" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.029603" 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-07-28T01:56:27.023873" elapsed="0.005769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.030269" 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-07-28T01:56:27.029895" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.034074" 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-07-28T01:56:27.030625" elapsed="0.003535"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.036803" elapsed="0.000053"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.034268" elapsed="0.002651"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.034237" elapsed="0.002717"/>
</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-07-28T01:56:27.037163" 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-07-28T01:56:27.037524" elapsed="0.000064"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.037295" elapsed="0.000344"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.037272" elapsed="0.000407"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.037727" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:56:27.039711" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.039757" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.023039" elapsed="0.016743"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.042014" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.040362" elapsed="0.001698"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.040344" elapsed="0.001738"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.042691" 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-07-28T01:56:27.042244" elapsed="0.000474"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.043254" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.042882" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.043333" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.043543" 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-07-28T01:56:27.040020" 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-07-28T01:56:27.043732" 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-07-28T01:56:27.022421" elapsed="0.021785"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.052328" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.052010" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.056659" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.056826" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.056928" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.052512" elapsed="0.004442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.057413" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.057144" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.059918" 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-07-28T01:56:27.057638" elapsed="0.002379"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.062044" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.060089" elapsed="0.002024"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.060069" elapsed="0.002077"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.066207" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.066275" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.062359" elapsed="0.003949"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.068929" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.066418" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.066391" elapsed="0.002655"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.069094" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:56:27.069387" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.069479" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.051623" elapsed="0.017901"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.072655" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.070315" elapsed="0.002437"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.070289" elapsed="0.002499"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.073634" 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-07-28T01:56:27.073018" elapsed="0.000657"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.074285" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.073914" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.074363" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.074575" 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-07-28T01:56:27.069832" elapsed="0.004770"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.074763" 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-07-28T01:56:27.050966" elapsed="0.024268"/>
</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-07-28T01:56:27.002359" elapsed="0.072948"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:26.995351" elapsed="0.080084"/>
</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-07-28T01:56:27.087789" 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-07-28T01:56:27.087998" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.087606" elapsed="0.000426"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.088776" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08400&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.088222" elapsed="0.000585"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.089256" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.088968" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.089744" 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-07-28T01:56:27.089442" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.090225" 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-07-28T01:56:27.089937" elapsed="0.000315"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.091370" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.090408" elapsed="0.000994"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.091959" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.091591" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.092630" 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-07-28T01:56:27.092224" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.093185" 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-07-28T01:56:27.092843" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.093757" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.093387" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.094301" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.093969" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.094872" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f08400&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.094529" 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-07-28T01:56:27.087173" elapsed="0.007805"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.095566" 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-07-28T01:56:27.095133" elapsed="0.000465"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.096015" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.095764" 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-07-28T01:56:27.104177" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.103823" elapsed="0.000382"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.109260" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.109875" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.109985" 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-07-28T01:56:27.104343" elapsed="0.005669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.110448" 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-07-28T01:56:27.110176" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.113128" 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-07-28T01:56:27.110665" elapsed="0.002518"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.115118" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.113273" elapsed="0.001922"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.113249" elapsed="0.001972"/>
</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-07-28T01:56:27.115381" elapsed="0.000059"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.115887" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.115726" elapsed="0.000217"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.115677" elapsed="0.000290"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.116001" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:27.118154" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.118219" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.103489" elapsed="0.014763"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.121451" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.119116" elapsed="0.002421"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.119083" elapsed="0.002491"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.122381" 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-07-28T01:56:27.121794" elapsed="0.000634"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.123220" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.122687" elapsed="0.000572"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.123330" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:27.123628" 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-07-28T01:56:27.118620" elapsed="0.005050"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.123909" elapsed="0.000595"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.102874" elapsed="0.021722"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.133588" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.133267" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.138316" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.138498" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.138609" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.133757" elapsed="0.004881"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.139078" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.138810" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.141642" 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-07-28T01:56:27.139295" elapsed="0.002404"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.143623" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.141776" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.141754" elapsed="0.001942"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.146568" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.146619" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.143843" elapsed="0.002800"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.148902" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.146721" elapsed="0.002264"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.146702" elapsed="0.002317"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.149065" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:27.149347" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.149505" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.132871" elapsed="0.016673"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.152734" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.150344" elapsed="0.002454"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.150318" elapsed="0.002511"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.153663" 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-07-28T01:56:27.153054" elapsed="0.000647"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.154487" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.153938" elapsed="0.000589"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.154599" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:27.154886" 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-07-28T01:56:27.149866" elapsed="0.005059"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.155148" elapsed="0.000591"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.132200" elapsed="0.023637"/>
</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-07-28T01:56:27.083101" elapsed="0.072818"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.075929" elapsed="0.080172"/>
</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-07-28T01:56:27.168511" 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-07-28T01:56:27.168675" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.168347" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.169311" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.168862" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.169818" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.169526" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.170299" 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-07-28T01:56:27.170012" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.170826" 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-07-28T01:56:27.170531" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.171971" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.171009" elapsed="0.000994"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.172543" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.172175" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.173088" 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-07-28T01:56:27.172745" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.173653" 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-07-28T01:56:27.173295" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.174191" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.173863" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.174798" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.174401" elapsed="0.000495"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.175394" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6d670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.175052" 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-07-28T01:56:27.168000" elapsed="0.007522"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.176088" 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-07-28T01:56:27.175678" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.176572" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.176300" 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-07-28T01:56:27.184798" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.184465" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.189419" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.190162" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.190323" 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-07-28T01:56:27.184970" elapsed="0.005391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.191022" 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-07-28T01:56:27.190637" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.194815" 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-07-28T01:56:27.191307" elapsed="0.003588"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.197580" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.194997" elapsed="0.002684"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.194970" elapsed="0.002746"/>
</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-07-28T01:56:27.197964" 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-07-28T01:56:27.198305" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.198105" elapsed="0.000275"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.198075" elapsed="0.000337"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.198488" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.200298" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.200344" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.184120" elapsed="0.016247"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.202695" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.201001" elapsed="0.001741"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.200982" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.203336" 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-07-28T01:56:27.202917" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.203924" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.203557" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.204009" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.204197" 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-07-28T01:56:27.200608" elapsed="0.003614"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.204393" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.183543" elapsed="0.021348"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.212884" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.212567" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.217254" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.217613" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.217744" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.213042" elapsed="0.004730"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.218195" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.217935" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.220511" 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-07-28T01:56:27.218399" elapsed="0.002165"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.222836" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.220635" elapsed="0.002271"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.220616" elapsed="0.002321"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.227127" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.227193" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.223142" elapsed="0.004083"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.229951" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.227348" elapsed="0.002682"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.227321" elapsed="0.002742"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.230111" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:27.230403" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.230488" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.212160" elapsed="0.018363"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.233703" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.231326" elapsed="0.002431"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.231294" elapsed="0.002492"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.234364" 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-07-28T01:56:27.233944" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.234994" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.234616" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.235073" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.235303" 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-07-28T01:56:27.230850" elapsed="0.004479"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.235507" 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-07-28T01:56:27.211539" elapsed="0.024447"/>
</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-07-28T01:56:27.164598" elapsed="0.071460"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.156526" elapsed="0.079655"/>
</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-07-28T01:56:27.247679" 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-07-28T01:56:27.247840" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.247529" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.248571" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fd80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.248069" elapsed="0.000531"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.249108" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.248755" elapsed="0.000381"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.249627" 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-07-28T01:56:27.249289" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.250160" 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-07-28T01:56:27.249850" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.251405" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.250340" elapsed="0.001097"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.252030" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.251651" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.252606" 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-07-28T01:56:27.252229" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.253183" 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-07-28T01:56:27.252814" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.253753" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.253377" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.254277" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.253951" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.254857" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6fd80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.254532" 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-07-28T01:56:27.247132" elapsed="0.007823"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.255556" 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-07-28T01:56:27.255146" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.256074" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.255780" 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-07-28T01:56:27.264484" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.264151" elapsed="0.000399"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.269110" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.269722" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.269827" 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-07-28T01:56:27.264686" elapsed="0.005166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.270307" 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-07-28T01:56:27.270050" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.273151" 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-07-28T01:56:27.270550" elapsed="0.002654"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.275209" elapsed="0.000034"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.273279" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.273258" elapsed="0.002049"/>
</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-07-28T01:56:27.275466" 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-07-28T01:56:27.275735" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.275560" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.275543" elapsed="0.000269"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.275844" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:27.277583" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.277629" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.263793" elapsed="0.013859"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.279986" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.278247" elapsed="0.001785"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.278229" elapsed="0.001825"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.280700" 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-07-28T01:56:27.280226" elapsed="0.000501"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.281289" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.280891" elapsed="0.000424"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.281414" elapsed="0.000079"/>
</return>
<msg time="2026-07-28T01:56:27.281655" 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-07-28T01:56:27.277909" elapsed="0.003772"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.281840" elapsed="0.000441"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.263180" elapsed="0.019165"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.291009" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.290659" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.294909" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.295070" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.295181" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.291168" elapsed="0.004039"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.295696" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.295372" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.298067" 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-07-28T01:56:27.295904" elapsed="0.002214"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.300079" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.298189" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.298169" elapsed="0.001981"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.303184" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.303231" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.300292" elapsed="0.002962"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.305178" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.303332" elapsed="0.001902"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.303313" elapsed="0.001945"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.305291" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.305509" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.305554" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.290264" elapsed="0.015313"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.307983" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.306200" elapsed="0.001829"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.306181" elapsed="0.001869"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.308661" 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-07-28T01:56:27.308198" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.309251" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.308897" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.309327" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:56:27.309562" 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-07-28T01:56:27.305833" elapsed="0.003755"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.309746" 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-07-28T01:56:27.289570" elapsed="0.020759"/>
</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-07-28T01:56:27.243591" elapsed="0.066800"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.236374" elapsed="0.074156"/>
</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-07-28T01:56:27.322915" 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-07-28T01:56:27.323126" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.322759" elapsed="0.000398"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.323904" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.323374" elapsed="0.000559"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.324413" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.324090" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.324932" 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-07-28T01:56:27.324652" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.325423" 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-07-28T01:56:27.325149" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.326480" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.325656" elapsed="0.000856"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.327057" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.326715" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.327644" 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-07-28T01:56:27.327293" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.328210" 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-07-28T01:56:27.327881" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.328776" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.328403" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.329332" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.328974" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.329864" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.329544" 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-07-28T01:56:27.322360" elapsed="0.007643"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.330611" 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-07-28T01:56:27.330162" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.331100" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.330796" elapsed="0.000453"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.339770" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.339398" elapsed="0.000399"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.344163" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.344815" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.344967" 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-07-28T01:56:27.339930" elapsed="0.005064"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.345478" 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-07-28T01:56:27.345162" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.348539" 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-07-28T01:56:27.345714" elapsed="0.002917"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.350657" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.348714" elapsed="0.002020"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.348691" elapsed="0.002069"/>
</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-07-28T01:56:27.350910" 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-07-28T01:56:27.351175" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.351002" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.350986" elapsed="0.000267"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.351286" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:27.353070" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.353117" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.339038" elapsed="0.014102"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.355444" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.353757" elapsed="0.001748"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.353739" elapsed="0.001788"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.356124" 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-07-28T01:56:27.355715" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.356765" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.356350" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.356842" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.357022" 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-07-28T01:56:27.353366" elapsed="0.003681"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.357246" elapsed="0.000457"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.338395" 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-07-28T01:56:27.366154" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.365811" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.370832" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.371083" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.371184" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.366322" elapsed="0.004887"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.371692" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.371411" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.374073" 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-07-28T01:56:27.371922" 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-07-28T01:56:27.376169" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.374210" elapsed="0.002011"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.374190" elapsed="0.002055"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.379361" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.379408" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.376388" elapsed="0.003044"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.381607" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.379562" elapsed="0.002103"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.379543" elapsed="0.002147"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.381724" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.381958" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.382015" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.365378" elapsed="0.016660"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.384354" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.382651" elapsed="0.001783"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.382633" elapsed="0.001837"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.385065" 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-07-28T01:56:27.384621" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.385663" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.385255" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.385740" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.385968" 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-07-28T01:56:27.382256" 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-07-28T01:56:27.386156" 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-07-28T01:56:27.364724" elapsed="0.021950"/>
</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-07-28T01:56:27.318540" elapsed="0.068192"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.310873" elapsed="0.075985"/>
</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-07-28T01:56:27.398684" 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-07-28T01:56:27.398833" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.398539" elapsed="0.000323"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.399501" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7e20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.399053" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.400055" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.399721" elapsed="0.000361"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.400565" 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-07-28T01:56:27.400237" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.401028" 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-07-28T01:56:27.400752" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.402103" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.401243" elapsed="0.000892"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.402689" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.402295" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.403251" 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-07-28T01:56:27.402889" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.403831" 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-07-28T01:56:27.403447" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.404382" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.404028" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.404963" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.404602" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.405581" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7e20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.405196" elapsed="0.000429"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:27.398155" elapsed="0.007526"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.406295" 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-07-28T01:56:27.405868" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.406782" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.406496" 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-07-28T01:56:27.415403" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.415097" elapsed="0.000333"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.419654" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.420203" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.420343" 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-07-28T01:56:27.415615" elapsed="0.004755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.420846" 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-07-28T01:56:27.420546" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.423587" 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-07-28T01:56:27.421039" elapsed="0.002603"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.425621" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.423713" elapsed="0.001976"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.423694" elapsed="0.002019"/>
</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-07-28T01:56:27.425861" 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-07-28T01:56:27.426138" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.426000" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.425982" elapsed="0.000231"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.426277" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:56:27.428004" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.428049" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.414740" elapsed="0.013331"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.430449" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.428706" elapsed="0.001804"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.428688" elapsed="0.001844"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.431164" 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-07-28T01:56:27.430680" elapsed="0.000511"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.431761" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.431353" elapsed="0.000434"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.431837" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:56:27.432060" 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-07-28T01:56:27.428320" elapsed="0.003765"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.432282" elapsed="0.000446"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.413975" elapsed="0.018819"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.440579" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.440264" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.445489" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.445644" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.445741" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.440744" elapsed="0.005062"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.446223" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.445972" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.450523" 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-07-28T01:56:27.446466" elapsed="0.004160"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.452643" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.450705" elapsed="0.001988"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.450684" elapsed="0.002032"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.455833" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.455913" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.452918" elapsed="0.003020"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.457912" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.456016" elapsed="0.001953"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.455997" elapsed="0.001996"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.458027" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.458266" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.458311" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.439887" elapsed="0.018446"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.460752" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.458945" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.458927" elapsed="0.001892"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.461480" 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-07-28T01:56:27.461006" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.462103" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.461706" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.462182" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.462398" 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-07-28T01:56:27.458608" elapsed="0.003817"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.462600" 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-07-28T01:56:27.439262" elapsed="0.023874"/>
</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-07-28T01:56:27.394653" elapsed="0.068541"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.387223" elapsed="0.076091"/>
</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-07-28T01:56:27.475210" 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-07-28T01:56:27.475363" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.475067" elapsed="0.000324"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.475986" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7150&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.475557" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.476485" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.476182" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.476942" 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-07-28T01:56:27.476666" elapsed="0.000301"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.477387" 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-07-28T01:56:27.477119" elapsed="0.000293"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.478512" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.477577" elapsed="0.000967"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.479033" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.478702" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.479605" 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-07-28T01:56:27.479267" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.480136" 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-07-28T01:56:27.479799" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.480670" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.480327" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.481182" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.480866" elapsed="0.000361"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.481715" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a7150&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.481376" 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-07-28T01:56:27.474734" elapsed="0.007078"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.482342" 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-07-28T01:56:27.481960" elapsed="0.000412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.482779" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.482538" 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-07-28T01:56:27.490562" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.490243" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.495101" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.495664" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.495773" 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-07-28T01:56:27.490720" elapsed="0.005079"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.496212" 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-07-28T01:56:27.495959" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.498780" 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-07-28T01:56:27.496399" elapsed="0.002434"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.500716" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.498934" elapsed="0.001851"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.498884" elapsed="0.001926"/>
</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-07-28T01:56:27.500955" 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-07-28T01:56:27.501181" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.501046" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.501030" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.501286" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:27.502923" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.502968" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.489931" elapsed="0.013060"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.505170" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.503583" elapsed="0.001632"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.503565" elapsed="0.001672"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.505805" 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-07-28T01:56:27.505383" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.506343" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.505992" elapsed="0.000378"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.506419" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.506616" 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-07-28T01:56:27.503202" elapsed="0.003439"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.506799" 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-07-28T01:56:27.489367" elapsed="0.017880"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.515091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.514794" elapsed="0.000324"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.520491" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.520686" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.520800" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.515269" elapsed="0.005559"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.521279" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.521024" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.523741" 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-07-28T01:56:27.521524" elapsed="0.002275"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.525750" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.523868" elapsed="0.001929"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.523850" elapsed="0.001971"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.528893" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.528941" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.525960" elapsed="0.003005"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.530889" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.529042" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.529024" elapsed="0.002025"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.531084" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.531282" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.531327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.514402" elapsed="0.016948"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.533636" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.531958" elapsed="0.001723"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.531940" elapsed="0.001764"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.534293" 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-07-28T01:56:27.533889" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.534952" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.534544" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.535029" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.535210" 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-07-28T01:56:27.531625" elapsed="0.003610"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.535431" 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-07-28T01:56:27.513788" elapsed="0.022166"/>
</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-07-28T01:56:27.471158" elapsed="0.064854"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.463670" elapsed="0.072457"/>
</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-07-28T01:56:27.547688" 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-07-28T01:56:27.547885" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.547547" elapsed="0.000368"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.548550" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ae80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.548068" elapsed="0.000510"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.549095" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.548773" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.549601" 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-07-28T01:56:27.549276" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.550090" 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-07-28T01:56:27.549814" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.551335" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.550303" elapsed="0.001063"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.551965" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.551577" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.552547" 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-07-28T01:56:27.552166" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.553153" 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-07-28T01:56:27.552781" elapsed="0.000414"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.553726" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.553349" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.554401" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.554018" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.554996" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ae80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.554667" 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-07-28T01:56:27.547160" elapsed="0.007976"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.555742" 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-07-28T01:56:27.555290" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.556212" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.555965" 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-07-28T01:56:27.564734" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.564354" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.569244" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.569838" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.569944" 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-07-28T01:56:27.564933" elapsed="0.005037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.570481" 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-07-28T01:56:27.570159" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.573231" 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-07-28T01:56:27.570676" 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-07-28T01:56:27.575316" elapsed="0.000034"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.573362" elapsed="0.002027"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.573340" elapsed="0.002074"/>
</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-07-28T01:56:27.575614" 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-07-28T01:56:27.575879" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.575707" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.575691" elapsed="0.000268"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.575991" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:27.577796" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.577851" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.564001" elapsed="0.013874"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.580196" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.578489" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.578469" elapsed="0.001794"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.580906" 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-07-28T01:56:27.580446" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.581514" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.581099" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.581590" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.581822" 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-07-28T01:56:27.578129" 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-07-28T01:56:27.582009" 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-07-28T01:56:27.563379" elapsed="0.019149"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.591019" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.590676" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.596170" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.596323" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.596496" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.591174" elapsed="0.005350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.596987" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.596685" elapsed="0.000348"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.599348" 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-07-28T01:56:27.597178" 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-07-28T01:56:27.601330" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.599484" elapsed="0.001982"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.599450" elapsed="0.002042"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.604489" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.604540" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.601636" 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-07-28T01:56:27.606541" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.604640" elapsed="0.001958"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.604621" elapsed="0.002002"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.606656" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.606897" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.606945" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.590242" elapsed="0.016726"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.609290" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.607569" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.607551" elapsed="0.001912"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.610071" 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-07-28T01:56:27.609620" elapsed="0.000478"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.610681" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.610263" elapsed="0.000445"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.610758" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.610979" 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-07-28T01:56:27.607183" elapsed="0.003822"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.611166" elapsed="0.000445"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.589620" elapsed="0.022057"/>
</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-07-28T01:56:27.543728" elapsed="0.068041"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.536425" elapsed="0.075469"/>
</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-07-28T01:56:27.623753" 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-07-28T01:56:27.623902" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.623611" elapsed="0.000319"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.624553" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f349f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.624082" elapsed="0.000499"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.625027" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.624735" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.625503" 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-07-28T01:56:27.625206" elapsed="0.000324"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.625958" 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-07-28T01:56:27.625684" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.626872" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:27.626135" elapsed="0.000768"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.627394" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.627060" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.627930" 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-07-28T01:56:27.627606" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.628508" 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-07-28T01:56:27.628164" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.629091" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.628701" elapsed="0.000437"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.629635" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:27.629289" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.630194" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b1f349f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.629868" 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-07-28T01:56:27.623224" elapsed="0.007068"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.630926" 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-07-28T01:56:27.630497" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.631350" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:27.631108" elapsed="0.000357"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.639771" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.639414" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.644174" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.644790" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.644906" 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-07-28T01:56:27.639928" elapsed="0.005005"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.645426" 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-07-28T01:56:27.645133" elapsed="0.000356"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.648388" 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-07-28T01:56:27.645635" elapsed="0.002831"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.650421" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.648539" elapsed="0.001965"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.648520" elapsed="0.002010"/>
</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-07-28T01:56:27.650714" 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-07-28T01:56:27.650943" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.650807" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.650791" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.651049" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:56:27.652914" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.652959" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.639057" elapsed="0.013924"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.655268" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.653580" elapsed="0.001734"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.653562" elapsed="0.001774"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.655949" 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-07-28T01:56:27.655501" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.656657" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.656178" elapsed="0.000508"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.656738" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:27.656927" 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-07-28T01:56:27.653230" elapsed="0.003722"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.657112" elapsed="0.000455"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.638464" elapsed="0.019170"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.666035" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.665690" elapsed="0.000372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.671586" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.671802" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.671914" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.666229" elapsed="0.005711"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.672428" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.672138" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.674855" 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-07-28T01:56:27.672646" elapsed="0.002261"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.676887" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.674979" elapsed="0.001958"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.674959" elapsed="0.002001"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.679927" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.680009" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.677142" elapsed="0.002893"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.682211" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.680113" elapsed="0.002154"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.680094" elapsed="0.002197"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.682324" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.682575" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.682619" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.665296" elapsed="0.017345"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.685036" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.683265" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.683247" elapsed="0.001858"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.685715" 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-07-28T01:56:27.685254" elapsed="0.000488"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.686335" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.685944" elapsed="0.000417"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.686410" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.686646" 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-07-28T01:56:27.682894" elapsed="0.003778"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.686910" 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-07-28T01:56:27.664588" elapsed="0.022813"/>
</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-07-28T01:56:27.619564" elapsed="0.067910"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.612182" elapsed="0.075442"/>
</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-07-28T01:56:27.699728" 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-07-28T01:56:27.699877" 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-07-28T01:56:27.699544" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.700526" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37327a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.700060" elapsed="0.000494"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.701031" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.700709" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.701538" 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-07-28T01:56:27.701210" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.702031" 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-07-28T01:56:27.701718" elapsed="0.000339"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.702970" 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-07-28T01:56:27.702209" elapsed="0.000792"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.703572" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.703197" elapsed="0.000459"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.704176" 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-07-28T01:56:27.703813" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.704757" 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-07-28T01:56:27.704371" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.705306" 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-07-28T01:56:27.704988" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.705887" 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-07-28T01:56:27.705559" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.706511" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b37327a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.706129" elapsed="0.000427"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:27.699140" elapsed="0.007472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.707271" 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-07-28T01:56:27.706800" elapsed="0.000503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.707732" 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-07-28T01:56:27.707482" elapsed="0.000387"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.716412" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.716065" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.720759" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.721352" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.721472" 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-07-28T01:56:27.716587" elapsed="0.004913"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.721961" 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-07-28T01:56:27.721662" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.724790" 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-07-28T01:56:27.722186" elapsed="0.002657"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.726862" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.724952" elapsed="0.001982"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.724895" elapsed="0.002065"/>
</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-07-28T01:56:27.727143" 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-07-28T01:56:27.727371" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.727236" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.727220" elapsed="0.000242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.727534" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:27.729271" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.729352" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.715747" elapsed="0.013630"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.731638" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.729949" elapsed="0.001773"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.729931" elapsed="0.001817"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.732298" 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-07-28T01:56:27.731896" elapsed="0.000428"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.732857" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.732502" elapsed="0.000381"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.732933" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.733112" 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-07-28T01:56:27.729614" elapsed="0.003523"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.733296" elapsed="0.000448"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.715092" elapsed="0.018717"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.742186" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.741850" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.747500" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.747745" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.747892" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.742347" elapsed="0.005580"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.748579" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.748198" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.752208" 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-07-28T01:56:27.748895" elapsed="0.003386"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.755224" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.752378" elapsed="0.002961"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.752352" elapsed="0.003023"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.759382" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.759430" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.755596" elapsed="0.003910"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.761535" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.759591" elapsed="0.002002"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.759572" elapsed="0.002045"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.761651" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:27.761890" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.761935" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.741411" elapsed="0.020556"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.764338" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.762631" elapsed="0.001752"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.762613" elapsed="0.001792"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.765068" 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-07-28T01:56:27.764609" elapsed="0.000486"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.765673" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.765260" elapsed="0.000475"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.765789" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.766018" 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-07-28T01:56:27.762230" elapsed="0.003815"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.766327" elapsed="0.000456"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.740753" elapsed="0.026097"/>
</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-07-28T01:56:27.695473" elapsed="0.071474"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.687954" elapsed="0.079116"/>
</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-07-28T01:56:27.779206" 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-07-28T01:56:27.779374" 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-07-28T01:56:27.779022" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.780098" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c4f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.779613" elapsed="0.000514"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.780696" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.780339" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.781198" 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-07-28T01:56:27.780880" elapsed="0.000344"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.781735" 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-07-28T01:56:27.781379" elapsed="0.000421"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.782901" 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-07-28T01:56:27.781959" elapsed="0.000974"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.783540" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.783137" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.784140" 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-07-28T01:56:27.783784" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.784749" 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-07-28T01:56:27.784389" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.785349" 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-07-28T01:56:27.784990" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.785958" 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-07-28T01:56:27.785586" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.786545" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6c4f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.786159" elapsed="0.000429"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:27.778645" elapsed="0.008001"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.787232" 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-07-28T01:56:27.786836" elapsed="0.000427"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.787795" 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-07-28T01:56:27.787492" elapsed="0.000367"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.796418" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.796065" elapsed="0.000379"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.802514" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.803294" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.803528" 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-07-28T01:56:27.796633" elapsed="0.006982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.804269" 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-07-28T01:56:27.803851" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.808311" 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-07-28T01:56:27.804607" elapsed="0.003780"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.811297" elapsed="0.000047"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.808558" elapsed="0.002843"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.808483" elapsed="0.002954"/>
</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-07-28T01:56:27.811707" 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-07-28T01:56:27.812076" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.811836" elapsed="0.000316"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.811813" elapsed="0.000371"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.812228" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:56:27.814490" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.814537" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.795702" elapsed="0.018858"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.817005" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.815240" elapsed="0.001813"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.815221" elapsed="0.001854"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.817696" 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-07-28T01:56:27.817225" elapsed="0.000498"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.818322" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.817930" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.818398" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.818631" 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-07-28T01:56:27.814865" elapsed="0.003792"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.818851" 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-07-28T01:56:27.795030" elapsed="0.024321"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.827861" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.827517" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.833693" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.833847" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.833989" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.828017" elapsed="0.005999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.834505" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.834175" elapsed="0.000376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.837396" 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-07-28T01:56:27.834730" elapsed="0.002813"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.840429" elapsed="0.000054"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.837645" elapsed="0.002887"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.837617" elapsed="0.002998"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.844884" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.844950" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.840819" elapsed="0.004214"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:27.847770" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.845147" elapsed="0.002702"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.845120" elapsed="0.002762"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.847928" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:27.848281" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.848344" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.827083" elapsed="0.021292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.850822" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.849125" elapsed="0.001742"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.849107" elapsed="0.001782"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.851495" 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-07-28T01:56:27.851038" elapsed="0.000485"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.852104" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.851731" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.852219" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:27.852402" 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-07-28T01:56:27.848754" elapsed="0.003674"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.852612" 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-07-28T01:56:27.826368" elapsed="0.026741"/>
</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-07-28T01:56:27.775066" elapsed="0.078102"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.767370" elapsed="0.085964"/>
</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-07-28T01:56:27.865266" 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-07-28T01:56:27.865482" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:27.865111" elapsed="0.000402"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.866340" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691760&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.865674" elapsed="0.000695"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.866866" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.866538" elapsed="0.000356"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.867356" 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-07-28T01:56:27.867046" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.867887" 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-07-28T01:56:27.867556" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.870861" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:27.868145" elapsed="0.002749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.871501" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.871097" elapsed="0.000449"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.872150" 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-07-28T01:56:27.871778" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.872774" 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-07-28T01:56:27.872385" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.873331" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:27.872972" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.873946" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:27.873576" elapsed="0.000452"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.874564" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691760&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.874182" elapsed="0.000426"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:27.864699" elapsed="0.009966"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.875287" 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-07-28T01:56:27.874852" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.875770" level="INFO">&lt;?xml version="1.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-07-28T01:56:27.875481" elapsed="0.000347"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.884255" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.883904" elapsed="0.000378"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.889067" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.889721" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.889836" 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-07-28T01:56:27.884415" elapsed="0.005447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.890318" 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-07-28T01:56:27.890062" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.893185" 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-07-28T01:56:27.890579" elapsed="0.002659"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.895254" elapsed="0.000037"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.893359" elapsed="0.001971"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.893336" elapsed="0.002020"/>
</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-07-28T01:56:27.895592" 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-07-28T01:56:27.895959" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.895722" elapsed="0.000314"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.895670" elapsed="0.000398"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.896113" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:56:27.898631" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.898696" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.883543" elapsed="0.015185"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.902144" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.899635" elapsed="0.002573"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.899610" elapsed="0.002628"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.903156" 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-07-28T01:56:27.902513" elapsed="0.000680"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.904055" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.903502" elapsed="0.000591"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.904208" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:56:27.904492" 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-07-28T01:56:27.899085" elapsed="0.005444"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.904798" elapsed="0.000809"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.882844" elapsed="0.022859"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.914215" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.913912" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.919314" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.919490" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.919627" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.914407" elapsed="0.005248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.920109" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.919815" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.922808" 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-07-28T01:56:27.920299" elapsed="0.002560"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.924923" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.922929" elapsed="0.002044"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.922910" elapsed="0.002087"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.928687" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:27.928793" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:27.925173" 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-07-28T01:56:27.931643" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.928940" elapsed="0.002783"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.928913" elapsed="0.002843"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:27.931802" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:27.932124" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:27.932185" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.913449" elapsed="0.018767"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.935732" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.933209" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.933183" elapsed="0.002646"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.936720" 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-07-28T01:56:27.936038" elapsed="0.000721"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.937653" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.937040" elapsed="0.000650"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.937762" elapsed="0.000090"/>
</return>
<msg time="2026-07-28T01:56:27.938069" 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-07-28T01:56:27.932685" elapsed="0.005420"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:27.938404" elapsed="0.000633"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.912788" elapsed="0.026314"/>
</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-07-28T01:56:27.861153" elapsed="0.078045"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.853659" elapsed="0.085666"/>
</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-07-28T01:56:27.951285" 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-07-28T01:56:27.951483" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:27.951142" elapsed="0.000373"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:27.952106" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1440&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:27.951668" elapsed="0.000466"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.952647" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:27.952286" elapsed="0.000388"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.953145" 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-07-28T01:56:27.952869" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:27.953695" 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-07-28T01:56:27.953367" elapsed="0.000354"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:27.954504" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:27.953872" elapsed="0.000702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.955292" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.954735" elapsed="0.000600"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.955941" 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-07-28T01:56:27.955506" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.956523" 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-07-28T01:56:27.956139" elapsed="0.000465"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.957113" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:27.956759" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.957691" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:27.957348" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.958368" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06a1440&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:27.958001" 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-07-28T01:56:27.950770" elapsed="0.007722"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.959111" 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-07-28T01:56:27.958686" elapsed="0.000456"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.959621" level="INFO">&lt;?xml version="1.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-07-28T01:56:27.959295" 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-07-28T01:56:27.968139" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.967757" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.972566" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.973103" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:27.973246" 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-07-28T01:56:27.968300" elapsed="0.004972"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.973720" 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-07-28T01:56:27.973435" elapsed="0.000371"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.976381" 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-07-28T01:56:27.973952" elapsed="0.002483"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:27.978305" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:56:27.976527" elapsed="0.001850"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.976506" 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-07-28T01:56:27.978560" 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-07-28T01:56:27.978786" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:27.978652" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:27.978636" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.978892" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:27.980527" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:27.980572" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:27.967383" elapsed="0.013212"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:27.982777" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:27.981141" elapsed="0.001680"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:27.981123" elapsed="0.001720"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.983424" 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-07-28T01:56:27.982991" elapsed="0.000476"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.984043" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:27.983677" elapsed="0.000392"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:27.984120" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:27.984300" 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-07-28T01:56:27.980809" 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-07-28T01:56:27.984496" 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-07-28T01:56:27.966731" elapsed="0.018224"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.992777" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:27.992476" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:27.997073" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:27.997227" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:27.997324" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:27.992934" elapsed="0.004415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:27.997787" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:27.997536" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.000199" 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-07-28T01:56:27.997974" elapsed="0.002276"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.002097" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.000320" elapsed="0.001826"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.000301" elapsed="0.001868"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.004769" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.004817" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.002308" elapsed="0.002555"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.007082" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.004943" elapsed="0.002218"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.004924" elapsed="0.002271"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.007240" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:28.007535" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.007599" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:27.992086" elapsed="0.015545"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.010762" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.008394" elapsed="0.002431"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.008369" elapsed="0.002487"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.011647" 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-07-28T01:56:28.011065" elapsed="0.000620"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.012410" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.011914" elapsed="0.000533"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.012538" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:28.012814" 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-07-28T01:56:28.007930" elapsed="0.004921"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.013129" elapsed="0.000573"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:27.991470" elapsed="0.022346"/>
</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-07-28T01:56:27.947153" elapsed="0.066756"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:27.939692" elapsed="0.074383"/>
</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-07-28T01:56:28.026788" 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-07-28T01:56:28.026975" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.026646" elapsed="0.000359"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.027654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e390&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.027160" elapsed="0.000522"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.028160" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.027872" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.028738" 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-07-28T01:56:28.028394" elapsed="0.000370"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.029249" 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-07-28T01:56:28.028918" elapsed="0.000357"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.030129" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.029481" elapsed="0.000679"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.030745" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.030355" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.031783" 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-07-28T01:56:28.030985" elapsed="0.000847"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.032421" 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-07-28T01:56:28.032028" elapsed="0.000479"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.033060" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.032703" elapsed="0.000405"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.033642" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.033262" elapsed="0.000463"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.034247" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6e390&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.033883" 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-07-28T01:56:28.026261" elapsed="0.008084"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.034975" 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-07-28T01:56:28.034548" elapsed="0.000458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.035444" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.035197" elapsed="0.000403"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.044158" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.043801" elapsed="0.000385"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.049103" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.049680" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.049785" 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-07-28T01:56:28.044331" elapsed="0.005519"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.050307" 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-07-28T01:56:28.050013" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.053118" 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-07-28T01:56:28.050513" elapsed="0.002657"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.055197" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.053244" elapsed="0.002024"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.053224" elapsed="0.002069"/>
</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-07-28T01:56:28.055489" 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-07-28T01:56:28.055719" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.055584" elapsed="0.000212"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.055568" elapsed="0.000292"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.055895" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:28.058124" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.058188" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.043429" 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-07-28T01:56:28.061733" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.059160" elapsed="0.002639"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.059135" elapsed="0.002739"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.062781" 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-07-28T01:56:28.062092" elapsed="0.000727"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.063688" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.063098" elapsed="0.000672"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.063843" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:28.064143" 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-07-28T01:56:28.058641" elapsed="0.005543"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.064409" elapsed="0.000662"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.042795" elapsed="0.022410"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.074636" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.074251" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.079574" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.079848" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.079991" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.074843" elapsed="0.005174"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.080441" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.080182" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.082956" 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-07-28T01:56:28.080652" elapsed="0.002356"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.084990" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.083084" elapsed="0.001956"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.083062" elapsed="0.002002"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.088047" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.088160" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.085208" elapsed="0.002985"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.090986" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.088302" elapsed="0.002844"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.088276" elapsed="0.002904"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.091226" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:28.091569" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.091633" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.073820" elapsed="0.017845"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.094954" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.092549" elapsed="0.002471"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.092524" elapsed="0.002527"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.095918" 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-07-28T01:56:28.095259" elapsed="0.000698"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.096806" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.096232" elapsed="0.000611"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.096913" elapsed="0.000085"/>
</return>
<msg time="2026-07-28T01:56:28.097217" 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-07-28T01:56:28.092022" elapsed="0.005230"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.097538" elapsed="0.000603"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.073104" elapsed="0.025174"/>
</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-07-28T01:56:28.022666" elapsed="0.075694"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.014325" elapsed="0.084269"/>
</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-07-28T01:56:28.110103" 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-07-28T01:56:28.110254" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.109961" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.110925" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e78d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.110435" elapsed="0.000518"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.111469" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.111158" elapsed="0.000341"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.111933" 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-07-28T01:56:28.111654" elapsed="0.000305"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.112383" 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-07-28T01:56:28.112112" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.113466" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.112574" elapsed="0.000926"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.113996" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.113660" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.114542" 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-07-28T01:56:28.114192" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.115066" 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-07-28T01:56:28.114740" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.115588" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.115259" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.116106" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.115786" elapsed="0.000529"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.116817" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e78d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.116494" 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-07-28T01:56:28.109627" elapsed="0.007286"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.117442" 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-07-28T01:56:28.117062" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.117890" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.117643" 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-07-28T01:56:28.125729" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.125414" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.129843" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.130428" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.130600" 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-07-28T01:56:28.125889" elapsed="0.004737"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.131089" 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-07-28T01:56:28.130831" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.133841" 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-07-28T01:56:28.131317" elapsed="0.002576"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.135903" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.133963" elapsed="0.002009"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.133944" elapsed="0.002054"/>
</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-07-28T01:56:28.136164" 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-07-28T01:56:28.136395" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.136259" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.136242" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.136519" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:28.138160" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.138208" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.125099" elapsed="0.013133"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.140544" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.138809" elapsed="0.001781"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.138792" elapsed="0.001821"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.141156" 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-07-28T01:56:28.140760" elapsed="0.000422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.141710" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.141344" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.141784" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.141962" 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-07-28T01:56:28.138476" elapsed="0.003524"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.142161" 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-07-28T01:56:28.124544" elapsed="0.018091"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.150884" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.150585" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.155180" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.155333" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.155492" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.151077" elapsed="0.004443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.156037" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.155684" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.159866" 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-07-28T01:56:28.156348" elapsed="0.003640"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.162864" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.160134" elapsed="0.002800"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.160061" elapsed="0.002906"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.167044" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.167094" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.163169" elapsed="0.003948"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.169081" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.167197" elapsed="0.001943"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.167178" elapsed="0.001986"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.169198" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:28.169435" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.169507" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.150147" elapsed="0.019385"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.171901" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.170132" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.170113" elapsed="0.001856"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.172603" 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-07-28T01:56:28.172119" elapsed="0.000512"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.173225" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.172830" elapsed="0.000421"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.173304" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.173526" 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-07-28T01:56:28.169752" elapsed="0.003800"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.173754" 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-07-28T01:56:28.149475" elapsed="0.024779"/>
</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-07-28T01:56:28.106324" elapsed="0.067989"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.098963" elapsed="0.075473"/>
</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-07-28T01:56:28.186254" 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-07-28T01:56:28.186411" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.186070" elapsed="0.000369"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.187088" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.186654" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.187617" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.187314" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.188111" 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-07-28T01:56:28.187839" elapsed="0.000297"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.188627" 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-07-28T01:56:28.188287" elapsed="0.000366"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.189849" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.188809" elapsed="0.001072"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.190421" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.190039" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.191058" 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-07-28T01:56:28.190725" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.191641" 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-07-28T01:56:28.191293" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.192232" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.191876" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.192808" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.192432" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.193427" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.193056" elapsed="0.000437"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:28.185734" elapsed="0.007814"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.194161" 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-07-28T01:56:28.193734" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.194650" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.194346" elapsed="0.000367"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.203158" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.202851" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.207823" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.208430" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.208552" 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-07-28T01:56:28.203354" elapsed="0.005224"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.209054" 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-07-28T01:56:28.208756" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.211824" 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-07-28T01:56:28.209246" 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-07-28T01:56:28.214129" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.211988" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.211968" elapsed="0.002343"/>
</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-07-28T01:56:28.214580" 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-07-28T01:56:28.214950" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.214711" elapsed="0.000313"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.214688" elapsed="0.000369"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.215101" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:28.217618" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.217682" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.202496" elapsed="0.015217"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.221089" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.218592" elapsed="0.002565"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.218566" elapsed="0.002622"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.222256" 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-07-28T01:56:28.221395" elapsed="0.000900"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.223047" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.222601" elapsed="0.000472"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.223123" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.223346" 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-07-28T01:56:28.218055" elapsed="0.005317"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.223549" 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-07-28T01:56:28.201876" elapsed="0.022165"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.232528" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.232143" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.236945" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.237101" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.237213" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.232689" elapsed="0.004550"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.237718" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.237401" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.240081" 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-07-28T01:56:28.237909" elapsed="0.002276"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.242168" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.240258" elapsed="0.001959"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.240238" elapsed="0.002002"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.245520" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.245569" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.242382" elapsed="0.003211"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.247597" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.245670" elapsed="0.001986"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.245652" elapsed="0.002028"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.247753" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:28.247992" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.248052" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.231725" elapsed="0.016351"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.250443" elapsed="0.000059"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.248728" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.248709" elapsed="0.001850"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.251196" 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-07-28T01:56:28.250708" elapsed="0.000516"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.251808" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.251391" elapsed="0.000481"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.251925" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:28.252123" 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-07-28T01:56:28.248329" elapsed="0.003820"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.252344" elapsed="0.000458"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.231058" elapsed="0.021809"/>
</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-07-28T01:56:28.182196" elapsed="0.070728"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.174811" elapsed="0.078268"/>
</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-07-28T01:56:28.265029" 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-07-28T01:56:28.265211" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.264878" elapsed="0.000363"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.265873" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.265395" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.266376" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.266091" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.266926" 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-07-28T01:56:28.266609" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.267415" 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-07-28T01:56:28.267106" elapsed="0.000381"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.268713" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.267666" elapsed="0.001078"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.269311" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.268940" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.269898" 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-07-28T01:56:28.269533" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.270514" 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-07-28T01:56:28.270131" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.271097" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.270711" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.271687" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.271298" elapsed="0.000512"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.272335" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0692930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.271967" 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-07-28T01:56:28.264501" elapsed="0.007934"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.273076" 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-07-28T01:56:28.272646" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.273594" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.273297" 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-07-28T01:56:28.282198" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.281852" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.286803" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.287882" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.288005" 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-07-28T01:56:28.282359" elapsed="0.005672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.288580" 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-07-28T01:56:28.288268" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.291521" 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-07-28T01:56:28.288774" elapsed="0.002801"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.294375" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.291650" elapsed="0.002842"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.291629" elapsed="0.002900"/>
</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-07-28T01:56:28.294781" 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-07-28T01:56:28.295105" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.294912" elapsed="0.000331"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.294890" elapsed="0.000387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.295324" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:28.297869" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.297976" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.281492" elapsed="0.016520"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.301555" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.299023" elapsed="0.002640"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.298956" elapsed="0.002743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.302608" 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-07-28T01:56:28.301911" elapsed="0.000736"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.303596" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.302921" elapsed="0.000716"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.303714" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:56:28.303990" 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-07-28T01:56:28.298432" elapsed="0.005585"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.304179" elapsed="0.000487"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.280840" elapsed="0.023891"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.313596" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.313230" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.318019" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.318175" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.318323" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.313794" elapsed="0.004556"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.318845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.318533" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.321318" 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-07-28T01:56:28.319034" elapsed="0.002337"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.323331" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.321441" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.321423" elapsed="0.001979"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.326481" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.326530" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.323561" elapsed="0.003020"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.329521" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.326661" elapsed="0.002941"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.326642" elapsed="0.002993"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.329682" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:28.330008" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.330070" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.312810" elapsed="0.017292"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.333514" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.331010" elapsed="0.002568"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.330986" elapsed="0.002623"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.334590" 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-07-28T01:56:28.333814" elapsed="0.000814"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.335499" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.334860" elapsed="0.000688"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.335621" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:28.335964" 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-07-28T01:56:28.330448" elapsed="0.005553"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.336275" elapsed="0.000622"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.312090" elapsed="0.024899"/>
</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-07-28T01:56:28.260919" elapsed="0.076199"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.253356" elapsed="0.083934"/>
</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-07-28T01:56:28.351738" 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-07-28T01:56:28.351935" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.351591" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.352613" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691df0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.352121" elapsed="0.000520"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.353119" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.352797" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.353629" 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-07-28T01:56:28.353300" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.354172" 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-07-28T01:56:28.353843" elapsed="0.000355"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.354993" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.354348" elapsed="0.000676"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.355612" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.355182" elapsed="0.000475"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.356206" 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-07-28T01:56:28.355811" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.356789" 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-07-28T01:56:28.356403" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.357379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.357021" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.357998" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.357628" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.358615" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0691df0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.358197" elapsed="0.000462"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:28.351193" elapsed="0.007559"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.359329" 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-07-28T01:56:28.358909" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.359856" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.359571" 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-07-28T01:56:28.367775" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.367470" elapsed="0.000332"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.372046" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.372588" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.372704" 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-07-28T01:56:28.367932" elapsed="0.004805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.373397" 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-07-28T01:56:28.372978" elapsed="0.000510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.377382" 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-07-28T01:56:28.373709" elapsed="0.003811"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.380392" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.377646" elapsed="0.002865"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.377597" elapsed="0.002999"/>
</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-07-28T01:56:28.380803" 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-07-28T01:56:28.381174" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.380930" elapsed="0.000321"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.380907" elapsed="0.000420"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.381376" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:28.383371" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.383416" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.367142" elapsed="0.016297"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.386088" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.384089" elapsed="0.002044"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.384071" elapsed="0.002084"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.386819" 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-07-28T01:56:28.386306" elapsed="0.000540"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.387445" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.387009" elapsed="0.000479"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.387540" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.387758" 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-07-28T01:56:28.383713" elapsed="0.004073"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.387951" 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-07-28T01:56:28.366588" elapsed="0.021961"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.397194" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.396826" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.401539" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.401738" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.401847" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.397402" elapsed="0.004471"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.402361" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.402070" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.404831" 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-07-28T01:56:28.402600" elapsed="0.002286"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.406930" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.404954" elapsed="0.002025"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.404936" elapsed="0.002127"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.409971" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.410018" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.407216" elapsed="0.002824"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.411968" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.410118" elapsed="0.001906"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.410099" elapsed="0.001948"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.412081" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:28.412305" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.412349" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.396358" elapsed="0.016014"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.414679" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.412996" elapsed="0.001768"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.412978" elapsed="0.001811"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.415382" 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-07-28T01:56:28.414940" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.415985" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.415627" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.416062" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:56:28.416284" 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-07-28T01:56:28.412604" elapsed="0.003706"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.416519" 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-07-28T01:56:28.395668" elapsed="0.021368"/>
</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-07-28T01:56:28.345461" elapsed="0.071636"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.337774" elapsed="0.079484"/>
</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-07-28T01:56:28.429542" 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-07-28T01:56:28.429843" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.429371" elapsed="0.000508"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.430530" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06916c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.430035" elapsed="0.000524"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.431042" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.430713" elapsed="0.000357"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.431558" 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-07-28T01:56:28.431264" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.432051" 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-07-28T01:56:28.431736" elapsed="0.000341"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.433039" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.432227" elapsed="0.000843"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.433616" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.433228" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.434171" 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-07-28T01:56:28.433816" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.434761" 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-07-28T01:56:28.434370" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.435311" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.434957" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.435929" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.435563" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.436504" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06916c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.436130" 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-07-28T01:56:28.428950" elapsed="0.007671"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.437201" 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-07-28T01:56:28.436773" elapsed="0.000459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.437751" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.437469" elapsed="0.000404"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.446223" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.445882" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.451358" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.452137" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.452368" 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-07-28T01:56:28.446379" elapsed="0.006027"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.453129" 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-07-28T01:56:28.452718" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.457412" 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-07-28T01:56:28.453445" elapsed="0.004062"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.460375" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.457610" elapsed="0.002939"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.457583" elapsed="0.003005"/>
</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-07-28T01:56:28.460811" elapsed="0.000039"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.461119" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.460980" elapsed="0.000193"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.460926" elapsed="0.000270"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.461228" elapsed="0.000013"/>
</return>
<msg time="2026-07-28T01:56:28.463027" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.463074" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.445528" elapsed="0.017569"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.465564" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.463758" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.463740" elapsed="0.001892"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.466224" 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-07-28T01:56:28.465780" elapsed="0.000470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.466828" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.466413" elapsed="0.000441"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.466904" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:28.467123" 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-07-28T01:56:28.463338" elapsed="0.003811"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.467306" elapsed="0.000486"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.444881" elapsed="0.022977"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.476091" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.475776" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.480317" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.480547" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.480649" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.476246" elapsed="0.004429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.481100" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.480842" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.483350" 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-07-28T01:56:28.481291" elapsed="0.002110"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.485537" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.483490" elapsed="0.002115"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.483468" elapsed="0.002169"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.489799" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.489864" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.485837" elapsed="0.004061"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.492685" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.490007" elapsed="0.002758"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.489981" elapsed="0.002817"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.492844" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:28.493120" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.493181" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.475381" elapsed="0.017831"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.496130" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.494006" elapsed="0.002169"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.493981" elapsed="0.002216"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.496778" 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-07-28T01:56:28.496347" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.497324" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.496969" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.497401" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.497600" 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-07-28T01:56:28.493538" elapsed="0.004087"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.497785" 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-07-28T01:56:28.474758" elapsed="0.023484"/>
</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-07-28T01:56:28.425087" elapsed="0.073214"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.417622" elapsed="0.080803"/>
</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-07-28T01:56:28.509557" 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-07-28T01:56:28.509709" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.509385" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.510296" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a250&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.509890" elapsed="0.000434"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.510826" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.510540" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.511292" 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-07-28T01:56:28.511004" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.511765" 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-07-28T01:56:28.511493" elapsed="0.000297"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.512582" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:28.511940" elapsed="0.000673"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.513106" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.512773" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.513641" 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-07-28T01:56:28.513302" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.514159" 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-07-28T01:56:28.513835" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.514681" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.514350" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.515207" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:28.514876" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.515755" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a250&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.515412" 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-07-28T01:56:28.509031" elapsed="0.006820"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.516377" 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-07-28T01:56:28.515999" elapsed="0.000407"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.516815" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.516574" 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-07-28T01:56:28.525514" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.525152" elapsed="0.000389"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.530639" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.531263" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.531401" 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-07-28T01:56:28.525708" elapsed="0.005719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.531904" 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-07-28T01:56:28.531647" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.534733" 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-07-28T01:56:28.532131" elapsed="0.002656"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.536811" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.534858" elapsed="0.002024"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.534839" elapsed="0.002068"/>
</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-07-28T01:56:28.537050" 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-07-28T01:56:28.537310" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.537140" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.537124" elapsed="0.000263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.537419" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:28.539228" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.539273" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.524795" elapsed="0.014501"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.542583" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.540039" elapsed="0.002610"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.540014" elapsed="0.002666"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.543575" 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-07-28T01:56:28.542942" elapsed="0.000717"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.544501" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.543892" elapsed="0.000648"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.544610" elapsed="0.000083"/>
</return>
<msg time="2026-07-28T01:56:28.544913" 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-07-28T01:56:28.539565" elapsed="0.005383"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.545213" 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-07-28T01:56:28.524150" elapsed="0.021808"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.555943" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.555643" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.560323" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.560501" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.560601" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.556135" elapsed="0.004492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.561296" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.560877" elapsed="0.000485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.565025" 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-07-28T01:56:28.561583" elapsed="0.003572"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.568099" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.565255" elapsed="0.002917"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.565228" elapsed="0.002976"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.571516" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.571601" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.568401" 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-07-28T01:56:28.573540" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.571705" elapsed="0.001930"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.571686" elapsed="0.001976"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.573695" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:28.573895" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.573939" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.555212" elapsed="0.018749"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.576334" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.574629" elapsed="0.001751"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.574611" elapsed="0.001791"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.577006" 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-07-28T01:56:28.576567" elapsed="0.000505"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.577652" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.577239" elapsed="0.000478"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.577766" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:28.577976" 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-07-28T01:56:28.574231" elapsed="0.003777"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.578209" elapsed="0.000454"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.554500" elapsed="0.024228"/>
</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-07-28T01:56:28.505712" elapsed="0.073072"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.498762" elapsed="0.080138"/>
</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-07-28T01:56:28.590818" 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-07-28T01:56:28.590969" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.590640" elapsed="0.000358"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.591649" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38404a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.591187" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.592186" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.591866" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.592696" 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-07-28T01:56:28.592368" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.593186" 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-07-28T01:56:28.592874" elapsed="0.000337"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.594259" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:28.593397" elapsed="0.000893"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.594920" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.594508" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.595554" 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-07-28T01:56:28.595163" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.596162" 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-07-28T01:56:28.595792" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.596774" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.596359" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.597338" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:28.596977" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.597940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38404a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.597612" 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-07-28T01:56:28.590251" elapsed="0.007826"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.598688" 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-07-28T01:56:28.598243" elapsed="0.000476"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.599152" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.598870" 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-07-28T01:56:28.607374" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.607030" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.612172" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.612787" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.612892" 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-07-28T01:56:28.607582" elapsed="0.005335"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.613400" 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-07-28T01:56:28.613116" elapsed="0.000390"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.616217" 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-07-28T01:56:28.613651" elapsed="0.002619"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.618292" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.616343" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.616323" elapsed="0.002097"/>
</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-07-28T01:56:28.618586" 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-07-28T01:56:28.618849" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.618677" elapsed="0.000261"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.618661" elapsed="0.000300"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.618994" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:28.620784" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.620863" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.606669" elapsed="0.014220"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.623995" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.621527" elapsed="0.002531"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.621509" elapsed="0.002580"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.624990" 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-07-28T01:56:28.624348" elapsed="0.000693"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.625949" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.625319" elapsed="0.000669"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.626058" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:28.626357" 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-07-28T01:56:28.621128" elapsed="0.005267"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.626683" elapsed="0.000626"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.606097" 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-07-28T01:56:28.638053" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.637713" elapsed="0.000368"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.642794" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.643093" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.643233" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.638210" elapsed="0.005057"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.643985" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.643570" elapsed="0.000478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.647748" 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-07-28T01:56:28.644305" elapsed="0.003568"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.650727" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.647970" elapsed="0.002826"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.647944" elapsed="0.002884"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.654226" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.654273" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.651128" elapsed="0.003168"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.656224" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.654373" elapsed="0.001907"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.654354" elapsed="0.001950"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.656337" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:28.656600" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.656644" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.637265" elapsed="0.019401"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.659011" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.657303" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.657285" elapsed="0.001795"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.659732" 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-07-28T01:56:28.659230" elapsed="0.000529"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.660356" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.659923" elapsed="0.000493"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.660498" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:28.660723" 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-07-28T01:56:28.656968" elapsed="0.003781"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.660908" elapsed="0.000462"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.636584" elapsed="0.024851"/>
</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-07-28T01:56:28.586639" elapsed="0.074871"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.579120" elapsed="0.082507"/>
</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-07-28T01:56:28.673640" 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-07-28T01:56:28.673820" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:28.673495" elapsed="0.000354"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.674446" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f64630&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.674002" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.675003" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.674678" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.675550" 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-07-28T01:56:28.675212" elapsed="0.000364"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.676103" 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-07-28T01:56:28.675772" elapsed="0.000359"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.677301" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.676351" elapsed="0.000982"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.677951" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.677559" elapsed="0.000472"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.678566" 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-07-28T01:56:28.678188" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.679168" 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-07-28T01:56:28.678800" elapsed="0.000411"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.679739" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:28.679364" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.680317" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.679938" elapsed="0.000462"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.680937" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f64630&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.680576" elapsed="0.000440"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:28.673056" elapsed="0.008056"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.681715" 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-07-28T01:56:28.681268" elapsed="0.000477"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.682185" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.681938" 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-07-28T01:56:28.690873" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.690525" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.696377" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.696983" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.697126" 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-07-28T01:56:28.691064" elapsed="0.006089"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.697659" 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-07-28T01:56:28.697317" elapsed="0.000392"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.700504" 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-07-28T01:56:28.697858" elapsed="0.002699"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.702578" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.700629" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.700609" elapsed="0.002064"/>
</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-07-28T01:56:28.702857" 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-07-28T01:56:28.703088" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.702950" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.702934" elapsed="0.000265"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.703232" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:28.705263" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.705328" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.690151" elapsed="0.015209"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.708766" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.706255" elapsed="0.002592"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.706230" elapsed="0.002654"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.709774" 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-07-28T01:56:28.709138" elapsed="0.000721"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.710814" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.710156" elapsed="0.000698"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.710926" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:28.711180" 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-07-28T01:56:28.705738" elapsed="0.005478"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.711523" elapsed="0.000656"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.689508" elapsed="0.022763"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.722014" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.721712" elapsed="0.000328"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.727011" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.727164" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.727311" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.722170" elapsed="0.005167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.727848" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.727525" elapsed="0.000379"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.730494" 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-07-28T01:56:28.728087" elapsed="0.002460"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.732613" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.730616" elapsed="0.002049"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.730597" elapsed="0.002090"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.735878" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.735962" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.732827" elapsed="0.003172"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.738818" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.736110" elapsed="0.002788"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.736083" elapsed="0.002864"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.738995" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:28.739324" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.739387" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.721245" elapsed="0.018174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.743046" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.740336" elapsed="0.002777"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.740311" elapsed="0.002833"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.744052" 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-07-28T01:56:28.743403" elapsed="0.000687"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.744948" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.744371" elapsed="0.000615"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.745056" elapsed="0.000095"/>
</return>
<msg time="2026-07-28T01:56:28.745369" 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-07-28T01:56:28.739766" elapsed="0.005640"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.745714" elapsed="0.000665"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.720552" elapsed="0.025939"/>
</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-07-28T01:56:28.669491" elapsed="0.077084"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.661858" elapsed="0.084970"/>
</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-07-28T01:56:28.758904" 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-07-28T01:56:28.759089" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.758763" elapsed="0.000356"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.759742" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.759273" elapsed="0.000497"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.760247" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.759924" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.760748" 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-07-28T01:56:28.760426" elapsed="0.000348"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.761284" 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-07-28T01:56:28.760967" elapsed="0.000344"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.762439" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:28.761475" elapsed="0.001027"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.763039" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.762664" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.763620" 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-07-28T01:56:28.763239" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.764185" 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-07-28T01:56:28.763819" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.764754" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.764381" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.765393" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:28.764985" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.765945" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a36e64d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.765622" 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-07-28T01:56:28.758352" elapsed="0.007690"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.766702" 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-07-28T01:56:28.766234" elapsed="0.000500"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.767132" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.766892" 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-07-28T01:56:28.775431" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.775086" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.780126" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.780746" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.780971" 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-07-28T01:56:28.775606" elapsed="0.005404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.781663" 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-07-28T01:56:28.781281" elapsed="0.000498"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.785628" 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-07-28T01:56:28.781982" elapsed="0.003766"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.788583" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.785851" elapsed="0.002829"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.785824" elapsed="0.002891"/>
</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-07-28T01:56:28.788962" 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-07-28T01:56:28.789283" elapsed="0.000073"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.789094" elapsed="0.000310"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.789071" elapsed="0.000366"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.789504" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:56:28.791799" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.791848" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.774767" elapsed="0.017104"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.794253" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.792522" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.792470" elapsed="0.001851"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.794952" 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-07-28T01:56:28.794496" elapsed="0.000482"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.795600" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.795186" elapsed="0.000440"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.795684" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:56:28.795929" 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-07-28T01:56:28.792094" elapsed="0.003861"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.796116" elapsed="0.000456"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.774146" elapsed="0.022534"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.805157" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.804803" elapsed="0.000380"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.809580" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.809850" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.809951" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.805348" elapsed="0.004628"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.810432" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.810179" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.815226" 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-07-28T01:56:28.810653" elapsed="0.004647"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.818161" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.815399" elapsed="0.002832"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.815372" elapsed="0.002892"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.822513" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.822579" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.818529" elapsed="0.004084"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.825398" elapsed="0.000093"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.822722" elapsed="0.002823"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.822696" elapsed="0.002883"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.825627" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:28.825940" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.825988" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.804372" elapsed="0.021639"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.828399" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.826681" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.826662" elapsed="0.001829"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.829087" 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-07-28T01:56:28.828678" elapsed="0.000436"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.829726" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.829333" elapsed="0.000423"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.829848" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:28.830032" 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-07-28T01:56:28.826265" elapsed="0.003793"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.830217" 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-07-28T01:56:28.803711" elapsed="0.027016"/>
</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-07-28T01:56:28.754845" elapsed="0.075938"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.747273" elapsed="0.083635"/>
</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-07-28T01:56:28.842629" 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-07-28T01:56:28.842887" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:28.842411" elapsed="0.000507"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.843583" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841940&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.843074" elapsed="0.000538"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.844141" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.843767" elapsed="0.000401"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.844657" 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-07-28T01:56:28.844323" elapsed="0.000360"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.845180" 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-07-28T01:56:28.844836" elapsed="0.000371"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.846281" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.845359" elapsed="0.000954"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.846873" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.846529" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.847488" 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-07-28T01:56:28.847112" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.848016" 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-07-28T01:56:28.847688" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.848537" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:28.848209" elapsed="0.000374"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.849086" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.848735" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.849660" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841940&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.849283" elapsed="0.000419"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:28.842073" elapsed="0.007684"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.850293" 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-07-28T01:56:28.849908" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.850735" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:28.850491" 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-07-28T01:56:28.858932" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.858583" elapsed="0.000377"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.864119" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.864731" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.864837" 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-07-28T01:56:28.859091" elapsed="0.005772"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.865324" 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-07-28T01:56:28.865064" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.868080" 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-07-28T01:56:28.865572" 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-07-28T01:56:28.870076" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.868208" elapsed="0.001939"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.868187" elapsed="0.001985"/>
</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-07-28T01:56:28.870319" 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-07-28T01:56:28.870602" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.870410" elapsed="0.000245"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.870394" elapsed="0.000285"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.870711" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:28.872435" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.872596" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.858208" elapsed="0.014419"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.875806" elapsed="0.000064"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.873400" elapsed="0.002516"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.873374" elapsed="0.002573"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.876885" 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-07-28T01:56:28.876155" elapsed="0.000768"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.877725" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.877149" elapsed="0.000613"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.877832" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:28.878146" 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-07-28T01:56:28.872871" elapsed="0.005310"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.878405" 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-07-28T01:56:28.857606" elapsed="0.021512"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.889265" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.888965" elapsed="0.000369"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.894431" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.894612" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.894714" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.889482" elapsed="0.005263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.895449" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.895045" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.899212" 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-07-28T01:56:28.895738" elapsed="0.003600"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.902291" elapsed="0.000068"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.899514" elapsed="0.002896"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.899484" elapsed="0.002958"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.906133" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.906179" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.902662" elapsed="0.003540"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.908114" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.906280" elapsed="0.001928"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.906262" elapsed="0.001971"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.908267" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:28.908490" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.908534" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.888547" elapsed="0.020010"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.910911" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.909185" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.909166" elapsed="0.001815"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.911546" 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-07-28T01:56:28.911129" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.912149" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.911750" elapsed="0.000425"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.912224" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:28.912403" 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-07-28T01:56:28.908814" elapsed="0.003615"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.912641" 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-07-28T01:56:28.887844" elapsed="0.025284"/>
</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-07-28T01:56:28.838616" elapsed="0.074569"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.831258" elapsed="0.082087"/>
</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-07-28T01:56:28.925264" 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-07-28T01:56:28.925411" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.925119" elapsed="0.000322"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:28.926124" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37281d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:28.925650" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.926652" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:28.926306" elapsed="0.000375"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.927158" 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-07-28T01:56:28.926833" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:28.927703" 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-07-28T01:56:28.927342" elapsed="0.000387"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.928898" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.927887" elapsed="0.001045"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.929483" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.929090" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.930144" 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-07-28T01:56:28.929766" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.930783" 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-07-28T01:56:28.930344" elapsed="0.000486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.931388" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:28.930987" elapsed="0.000478"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.931986" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:28.931620" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.932601" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37281d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:28.932223" elapsed="0.000424"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:28.924737" elapsed="0.007967"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.933312" 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-07-28T01:56:28.932891" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.933810" level="INFO">&lt;?xml version="1.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-07-28T01:56:28.933512" elapsed="0.000373"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.942260" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.941961" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.946941" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.947524" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:28.947663" 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-07-28T01:56:28.942416" elapsed="0.005274"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.948148" 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-07-28T01:56:28.947891" elapsed="0.000303"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.950961" 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-07-28T01:56:28.948374" elapsed="0.002670"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:28.953575" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:56:28.951117" elapsed="0.002597"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.951098" 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-07-28T01:56:28.954007" 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-07-28T01:56:28.954329" elapsed="0.000071"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.954138" elapsed="0.000310"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:28.954115" elapsed="0.000387"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.954548" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:28.957135" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:28.957200" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:28.941599" elapsed="0.015633"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.960497" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.958070" elapsed="0.002493"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.958045" elapsed="0.002548"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.961498" 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-07-28T01:56:28.960860" elapsed="0.000678"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.962331" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:28.961770" elapsed="0.000597"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:28.962438" elapsed="0.000062"/>
</return>
<msg time="2026-07-28T01:56:28.962802" 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-07-28T01:56:28.957605" elapsed="0.005236"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:28.963122" elapsed="0.000638"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:28.940992" elapsed="0.022886"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.972354" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:28.972010" elapsed="0.000371"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:28.977995" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:28.978918" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:28.979257" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:28.972569" elapsed="0.006769"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.980572" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:28.979843" elapsed="0.000851"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:28.984726" 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-07-28T01:56:28.981096" elapsed="0.003704"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.988190" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.984902" elapsed="0.003373"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.984874" elapsed="0.003441"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:28.993595" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:28.993675" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:28.988598" elapsed="0.005134"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:28.996369" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:28.993865" elapsed="0.002571"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.993833" elapsed="0.002654"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:28.996610" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:28.996864" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:28.996918" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:28.971575" elapsed="0.025371"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:28.999682" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:28.997671" elapsed="0.002058"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:28.997649" elapsed="0.002105"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.000338" 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-07-28T01:56:28.999908" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.000916" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.000546" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.000994" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.001173" 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-07-28T01:56:28.997228" elapsed="0.003970"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.001357" 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-07-28T01:56:28.970888" elapsed="0.030959"/>
</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-07-28T01:56:28.921129" elapsed="0.080776"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:28.913685" elapsed="0.088346"/>
</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-07-28T01:56:29.013246" 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-07-28T01:56:29.013398" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.013091" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.014061" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b031a520&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.013599" elapsed="0.000490"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.014566" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.014258" elapsed="0.000335"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.015034" 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-07-28T01:56:29.014748" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.015511" 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-07-28T01:56:29.015212" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.016655" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.015688" elapsed="0.000998"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.017200" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.016861" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.017816" 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-07-28T01:56:29.017399" elapsed="0.000465"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.018366" 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-07-28T01:56:29.018020" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.018918" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.018585" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.019465" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.019117" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.020064" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b031a520&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.019724" 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-07-28T01:56:29.012756" elapsed="0.007407"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.020738" 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-07-28T01:56:29.020318" elapsed="0.000451"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.021180" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.020921" 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-07-28T01:56:29.029829" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.029447" elapsed="0.000410"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.034806" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.035366" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.035510" 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-07-28T01:56:29.029998" elapsed="0.005540"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.035993" 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-07-28T01:56:29.035708" elapsed="0.000332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.038700" 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-07-28T01:56:29.036188" elapsed="0.002569"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.040626" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.038830" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.038810" elapsed="0.001909"/>
</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-07-28T01:56:29.040870" 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-07-28T01:56:29.041112" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.040975" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.040958" elapsed="0.000228"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.041217" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.043482" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.043548" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.029113" elapsed="0.014471"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.046847" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.044477" elapsed="0.002450"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.044429" elapsed="0.002530"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.047791" 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-07-28T01:56:29.047171" elapsed="0.000658"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.048620" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.048076" elapsed="0.000599"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.048747" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:29.049003" 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-07-28T01:56:29.043961" elapsed="0.005079"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.049297" elapsed="0.000776"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:29.028507" elapsed="0.021658"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.058589" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.058268" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.063792" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.063956" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.064070" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.058749" elapsed="0.005347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.064547" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.064257" elapsed="0.000336"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.067041" 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-07-28T01:56:29.064738" elapsed="0.002362"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.069026" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.067192" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.067170" elapsed="0.001931"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.073005" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.073072" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.069259" 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-07-28T01:56:29.075735" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.073215" elapsed="0.002599"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.073187" elapsed="0.002660"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.075893" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:56:29.076319" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.076379" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.057878" elapsed="0.018532"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.079552" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.077249" elapsed="0.002366"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.077224" elapsed="0.002421"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.080567" 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-07-28T01:56:29.079944" elapsed="0.000688"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.081387" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.080864" elapsed="0.000560"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.081514" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:56:29.081809" 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-07-28T01:56:29.076757" elapsed="0.005091"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.082031" 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-07-28T01:56:29.057211" elapsed="0.025308"/>
</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-07-28T01:56:29.009380" elapsed="0.073196"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.002356" elapsed="0.080346"/>
</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-07-28T01:56:29.094129" 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-07-28T01:56:29.094268" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.093985" elapsed="0.000312"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.094913" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ab10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.094480" elapsed="0.000474"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.095395" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.095112" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.095890" 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-07-28T01:56:29.095596" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.096368" 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-07-28T01:56:29.096072" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.097387" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.096572" elapsed="0.000847"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.097941" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.097608" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.098491" 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-07-28T01:56:29.098148" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.099033" 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-07-28T01:56:29.098704" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.099585" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.099235" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.100116" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.099783" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.100701" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372ab10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.100338" 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-07-28T01:56:29.093633" elapsed="0.007169"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.101354" 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-07-28T01:56:29.100954" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.101852" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.101602" 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-07-28T01:56:29.109965" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.109654" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.114625" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.115310" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.115502" 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-07-28T01:56:29.110124" elapsed="0.005418"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.116159" 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-07-28T01:56:29.115769" elapsed="0.000453"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.120148" 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-07-28T01:56:29.116440" elapsed="0.003782"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.122903" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.120319" elapsed="0.002676"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.120293" elapsed="0.002737"/>
</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-07-28T01:56:29.123230" 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-07-28T01:56:29.123573" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.123360" elapsed="0.000290"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.123337" elapsed="0.000345"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.123727" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:29.125767" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.125812" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.109305" elapsed="0.016529"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.128048" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.126396" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.126378" elapsed="0.001737"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.128704" 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-07-28T01:56:29.128278" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.129310" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.128947" elapsed="0.000422"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.129432" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:56:29.129637" 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-07-28T01:56:29.126061" elapsed="0.003601"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.129833" 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-07-28T01:56:29.108732" elapsed="0.021553"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.138360" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.138044" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.143545" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.143722" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.143824" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.138534" elapsed="0.005315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.144286" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.144017" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.146612" 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-07-28T01:56:29.144506" elapsed="0.002158"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.148835" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.146733" elapsed="0.002169"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.146714" elapsed="0.002219"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.153007" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.153073" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.149128" elapsed="0.003976"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.156140" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.153211" elapsed="0.003011"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.153186" elapsed="0.003069"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.156302" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:29.156626" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.156694" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.137653" elapsed="0.019074"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.159835" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.157531" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.157505" elapsed="0.002404"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.160511" 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-07-28T01:56:29.160073" elapsed="0.000467"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.161088" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.160709" elapsed="0.000408"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.161167" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.161346" 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-07-28T01:56:29.157046" elapsed="0.004362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.161589" 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-07-28T01:56:29.137008" elapsed="0.025051"/>
</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-07-28T01:56:29.090019" elapsed="0.072100"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.082987" elapsed="0.079248"/>
</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-07-28T01:56:29.174577" 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-07-28T01:56:29.174735" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.174398" elapsed="0.000366"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.175409" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.174946" elapsed="0.000491"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.175932" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.175632" elapsed="0.000329"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.176436" 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-07-28T01:56:29.176132" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.176962" 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-07-28T01:56:29.176636" elapsed="0.000353"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.177941" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.177154" elapsed="0.000818"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.178539" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.178160" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.179091" 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-07-28T01:56:29.178754" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.179687" 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-07-28T01:56:29.179316" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.180213" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.179884" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.180843" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.180473" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.181383" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.181045" 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-07-28T01:56:29.174037" elapsed="0.007475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.182091" 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-07-28T01:56:29.181668" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.182555" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.182292" elapsed="0.000392"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.191116" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.190789" elapsed="0.000354"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.195643" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.196218" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.196324" 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-07-28T01:56:29.191276" elapsed="0.005074"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.196803" 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-07-28T01:56:29.196532" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.199509" 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-07-28T01:56:29.196994" elapsed="0.002569"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.201488" elapsed="0.000035"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.199654" elapsed="0.001910"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.199631" elapsed="0.001959"/>
</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-07-28T01:56:29.201750" 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-07-28T01:56:29.201977" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.201841" elapsed="0.000186"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.201825" elapsed="0.000225"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.202083" elapsed="0.000013"/>
</return>
<msg time="2026-07-28T01:56:29.204335" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.204401" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.190415" elapsed="0.014019"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.207700" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.205268" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.205240" elapsed="0.002559"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.208631" 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-07-28T01:56:29.208008" elapsed="0.000662"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.209421" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.208902" elapsed="0.000581"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.209569" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:56:29.209831" 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-07-28T01:56:29.204780" elapsed="0.005086"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.210087" 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-07-28T01:56:29.189812" elapsed="0.021002"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.220067" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.219753" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.224342" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.224570" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.224671" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.220221" elapsed="0.004475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.225308" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.224930" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.228824" 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-07-28T01:56:29.225609" elapsed="0.003304"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.231631" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.229013" elapsed="0.002687"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.228986" elapsed="0.002751"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.236185" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.236249" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.232044" elapsed="0.004239"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.238875" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.236393" elapsed="0.002560"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.236367" elapsed="0.002619"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.239047" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:56:29.239325" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.239385" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.219348" elapsed="0.020081"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.242549" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.240219" elapsed="0.002398"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.240194" elapsed="0.002454"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.243325" 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-07-28T01:56:29.242903" elapsed="0.000449"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.243901" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.243531" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.243977" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.244162" 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-07-28T01:56:29.239751" elapsed="0.004437"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.244346" 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-07-28T01:56:29.218711" elapsed="0.026116"/>
</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-07-28T01:56:29.170147" elapsed="0.074736"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.162405" elapsed="0.082601"/>
</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-07-28T01:56:29.256204" 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-07-28T01:56:29.256511" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.256068" elapsed="0.000474"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.257148" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2480&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.256708" elapsed="0.000468"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.257697" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.257366" elapsed="0.000359"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.258175" 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-07-28T01:56:29.257883" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.258663" 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-07-28T01:56:29.258356" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.261485" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.258854" elapsed="0.002675"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.262059" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.261703" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.262616" 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-07-28T01:56:29.262264" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.263156" 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-07-28T01:56:29.262816" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.263696" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.263352" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.264279" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.263941" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.264865" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2480&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.264506" elapsed="0.000401"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:29.255726" elapsed="0.009236"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.265532" 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-07-28T01:56:29.265110" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.265966" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.265715" 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-07-28T01:56:29.273980" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.273664" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.278435" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.278995" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.279145" 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-07-28T01:56:29.274134" elapsed="0.005037"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.279600" 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-07-28T01:56:29.279329" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.282215" 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-07-28T01:56:29.279801" elapsed="0.002466"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.284136" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.282337" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.282318" elapsed="0.001915"/>
</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-07-28T01:56:29.284389" 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-07-28T01:56:29.284632" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.284495" elapsed="0.000193"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.284478" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.284754" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.286732" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.286795" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.273284" elapsed="0.013557"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.289975" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.287654" elapsed="0.002384"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.287630" elapsed="0.002438"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.290893" 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-07-28T01:56:29.290272" elapsed="0.000657"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.291709" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.291155" elapsed="0.000590"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.291815" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:29.292081" 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-07-28T01:56:29.287143" elapsed="0.004976"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.292337" 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-07-28T01:56:29.272714" elapsed="0.020312"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.302493" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.302162" elapsed="0.000358"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.307222" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.307373" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.307494" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.302648" elapsed="0.004873"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.308066" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.307693" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.311555" 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-07-28T01:56:29.308345" elapsed="0.003335"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.314334" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.311780" elapsed="0.002622"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.311754" elapsed="0.002680"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.318444" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.318507" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.314654" 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-07-28T01:56:29.320355" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.318608" elapsed="0.001814"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.318589" elapsed="0.001857"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.320498" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.320707" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.320751" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.301768" elapsed="0.019006"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.322986" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.321334" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.321316" elapsed="0.001737"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.323638" 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-07-28T01:56:29.323203" elapsed="0.000462"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.324211" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.323839" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.324288" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:29.324486" 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-07-28T01:56:29.320989" 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-07-28T01:56:29.324691" 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-07-28T01:56:29.301109" elapsed="0.024034"/>
</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-07-28T01:56:29.252355" elapsed="0.072858"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.245279" elapsed="0.080052"/>
</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-07-28T01:56:29.336558" 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-07-28T01:56:29.336693" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.336383" elapsed="0.000339"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.337300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ef70&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.336878" elapsed="0.000450"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.337789" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.337506" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.338256" 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-07-28T01:56:29.337968" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.338724" 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-07-28T01:56:29.338433" elapsed="0.000316"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.339835" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.338900" elapsed="0.000967"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.340410" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.340037" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.341020" 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-07-28T01:56:29.340677" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.341584" 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-07-28T01:56:29.341220" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.342110" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.341792" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.342661" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.342323" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.343223" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b063ef70&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.342884" 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-07-28T01:56:29.336039" elapsed="0.007285"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.343909" 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-07-28T01:56:29.343489" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.344359" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.344096" 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-07-28T01:56:29.352336" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.352000" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.357738" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.358226" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.358327" 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-07-28T01:56:29.352514" elapsed="0.005839"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.358788" 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-07-28T01:56:29.358536" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.361322" 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-07-28T01:56:29.358976" elapsed="0.002397"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.363194" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.361442" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.361423" 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-07-28T01:56:29.363477" 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-07-28T01:56:29.363709" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.363572" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.363555" elapsed="0.000230"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.363817" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:29.365872" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.365936" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.351681" elapsed="0.014287"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.369116" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.366782" elapsed="0.002402"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.366757" elapsed="0.002458"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.370043" 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-07-28T01:56:29.369425" elapsed="0.000656"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.370859" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.370317" elapsed="0.000578"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.370965" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:29.371231" 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-07-28T01:56:29.366281" elapsed="0.004986"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.371512" elapsed="0.000587"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:29.351099" elapsed="0.021105"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.381650" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.381331" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.386539" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.386708" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.386850" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.381811" elapsed="0.005084"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.387537" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.387147" elapsed="0.000457"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.390753" 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-07-28T01:56:29.387812" elapsed="0.003013"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.393488" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.390922" elapsed="0.002650"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.390896" elapsed="0.002708"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.397247" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.397293" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.393799" elapsed="0.003527"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.399168" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.397409" elapsed="0.001815"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.397389" elapsed="0.001858"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.399316" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:29.399565" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.399609" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.380936" elapsed="0.018696"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.401836" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.400197" elapsed="0.001684"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.400179" elapsed="0.001724"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.402517" 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-07-28T01:56:29.402066" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.403084" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.402716" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.403161" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.403364" 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-07-28T01:56:29.399850" elapsed="0.003543"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.403579" 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-07-28T01:56:29.380277" elapsed="0.023769"/>
</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-07-28T01:56:29.332701" elapsed="0.071403"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.325606" elapsed="0.078607"/>
</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-07-28T01:56:29.415501" 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-07-28T01:56:29.415631" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.415340" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.416263" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67920&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.415820" elapsed="0.000472"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.416758" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.416472" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.417238" 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-07-28T01:56:29.416951" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.417719" 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-07-28T01:56:29.417415" elapsed="0.000329"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.418878" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.417892" elapsed="0.001017"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.419473" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.419089" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.420024" 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-07-28T01:56:29.419678" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.420583" 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-07-28T01:56:29.420222" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.421121" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.420792" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.421676" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.421325" elapsed="0.000445"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.422282" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67920&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.421940" 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-07-28T01:56:29.414979" elapsed="0.007402"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.422967" 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-07-28T01:56:29.422551" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.423396" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.423151" 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-07-28T01:56:29.431438" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.431137" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.436374" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.436889" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.436992" 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-07-28T01:56:29.431626" elapsed="0.005391"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.437446" 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-07-28T01:56:29.437178" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.440053" 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-07-28T01:56:29.437652" elapsed="0.002456"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.441979" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.440177" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.440158" elapsed="0.001914"/>
</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-07-28T01:56:29.442212" 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-07-28T01:56:29.442441" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.442303" elapsed="0.000205"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.442287" elapsed="0.000244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.442562" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:29.444520" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.444584" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.430779" elapsed="0.013879"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.447795" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.445480" elapsed="0.002379"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.445437" elapsed="0.002453"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.448710" 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-07-28T01:56:29.448098" elapsed="0.000651"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.449511" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.448980" elapsed="0.000569"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.449619" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:29.449894" 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-07-28T01:56:29.444981" elapsed="0.004950"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.450149" elapsed="0.000589"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:29.430195" elapsed="0.020633"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.460229" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.459922" elapsed="0.000334"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.464961" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.465115" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.465226" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.460384" elapsed="0.004868"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.465700" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.465410" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.468928" 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-07-28T01:56:29.465973" elapsed="0.003026"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.471658" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.469095" elapsed="0.002654"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.469069" elapsed="0.002711"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.475636" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.475683" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.471981" 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-07-28T01:56:29.477523" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.475788" elapsed="0.001791"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.475767" elapsed="0.001836"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.477636" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:29.477835" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.477879" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.459532" elapsed="0.018370"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.480090" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.478480" elapsed="0.001654"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.478439" elapsed="0.001717"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.480770" 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-07-28T01:56:29.480345" elapsed="0.000452"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.481317" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.480961" elapsed="0.000382"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.481394" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.481590" 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-07-28T01:56:29.478125" elapsed="0.003491"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.481773" 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-07-28T01:56:29.458887" elapsed="0.023348"/>
</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-07-28T01:56:29.411598" elapsed="0.070694"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.404469" elapsed="0.077937"/>
</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-07-28T01:56:29.493587" 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-07-28T01:56:29.493718" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.493433" elapsed="0.000314"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.494357" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66ed0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.493909" elapsed="0.000476"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.494849" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.494563" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.495331" 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-07-28T01:56:29.495032" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.495807" 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-07-28T01:56:29.495530" elapsed="0.000302"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.496762" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.495986" elapsed="0.000807"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.497289" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.496953" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.497862" 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-07-28T01:56:29.497501" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.498389" 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-07-28T01:56:29.498059" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.498924" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.498605" elapsed="0.000363"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.499440" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.499118" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.499980" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f66ed0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.499658" 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-07-28T01:56:29.493099" elapsed="0.006979"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.500633" 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-07-28T01:56:29.500229" elapsed="0.000472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.501108" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.500857" 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-07-28T01:56:29.508964" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.508662" elapsed="0.000329"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.513725" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.514359" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.514492" 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-07-28T01:56:29.509121" elapsed="0.005399"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.514935" 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-07-28T01:56:29.514681" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.517562" 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-07-28T01:56:29.515130" elapsed="0.002489"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.519466" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.517693" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.517674" 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-07-28T01:56:29.519701" 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-07-28T01:56:29.519947" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.519799" elapsed="0.000200"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.519783" elapsed="0.000239"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.520054" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.521800" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.521887" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.508327" elapsed="0.013601"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.525155" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.522778" elapsed="0.002453"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.522751" elapsed="0.002512"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.526100" 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-07-28T01:56:29.525514" elapsed="0.000623"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.526972" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.526430" elapsed="0.000579"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.527093" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:29.527354" 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-07-28T01:56:29.522248" elapsed="0.005143"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.527645" 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-07-28T01:56:29.507765" elapsed="0.020527"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.538036" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.537728" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.542619" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.542775" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.542943" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.538204" elapsed="0.004785"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.543610" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.543215" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.546883" 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-07-28T01:56:29.543892" elapsed="0.003064"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.549625" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.547053" elapsed="0.002639"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.547027" elapsed="0.002697"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.553650" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.553696" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.549938" 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-07-28T01:56:29.555749" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.553796" elapsed="0.002009"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.553778" elapsed="0.002051"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.555864" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:29.556074" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.556117" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.537322" elapsed="0.018818"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.558371" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.556723" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.556706" elapsed="0.001743"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.559027" 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-07-28T01:56:29.558615" elapsed="0.000440"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.559598" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.559217" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.559685" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.559868" 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-07-28T01:56:29.556366" elapsed="0.003563"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.560091" 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-07-28T01:56:29.536671" elapsed="0.023916"/>
</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-07-28T01:56:29.489586" elapsed="0.071058"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.482671" elapsed="0.078106"/>
</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-07-28T01:56:29.572091" 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-07-28T01:56:29.572232" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.571956" elapsed="0.000305"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.572895" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a700&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.572417" elapsed="0.000506"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.573370" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.573089" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.573870" 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-07-28T01:56:29.573579" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.574333" 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-07-28T01:56:29.574051" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.575310" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.574525" elapsed="0.000815"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.575849" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.575520" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.576391" 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-07-28T01:56:29.576060" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.576956" 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-07-28T01:56:29.576614" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.577491" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.577152" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.578027" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.577691" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.578575" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a372a700&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.578234" 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-07-28T01:56:29.571612" elapsed="0.007072"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.579232" 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-07-28T01:56:29.578833" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.579706" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.579417" elapsed="0.000390"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.588013" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.587698" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.593073" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.593594" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.593698" 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-07-28T01:56:29.588171" elapsed="0.005555"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.594305" 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-07-28T01:56:29.593946" elapsed="0.000422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.598028" 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-07-28T01:56:29.594601" elapsed="0.003500"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.600763" elapsed="0.000040"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.598203" elapsed="0.002652"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.598176" elapsed="0.002713"/>
</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-07-28T01:56:29.601111" 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-07-28T01:56:29.601438" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.601238" elapsed="0.000298"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.601216" elapsed="0.000352"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.601613" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:29.603964" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.604070" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.587347" elapsed="0.016760"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.606596" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.604943" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.604921" elapsed="0.001741"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.607217" 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-07-28T01:56:29.606809" elapsed="0.000434"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.607797" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.607419" elapsed="0.000404"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.607872" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:29.608067" 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-07-28T01:56:29.604406" elapsed="0.003687"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.608263" 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-07-28T01:56:29.586764" elapsed="0.021994"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.616826" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.616524" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.621543" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.621735" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.621839" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.616994" elapsed="0.004883"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.622310" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.622043" elapsed="0.000313"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.624787" 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-07-28T01:56:29.622517" 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-07-28T01:56:29.626737" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.624909" elapsed="0.001878"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.624889" elapsed="0.001922"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.630135" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.630200" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.626953" elapsed="0.003280"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.632857" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.630341" elapsed="0.002594"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.630314" elapsed="0.002654"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.633017" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:56:29.633307" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.633367" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.616117" elapsed="0.017294"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.636557" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.634229" elapsed="0.002433"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.634192" elapsed="0.002510"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.637548" 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-07-28T01:56:29.636929" elapsed="0.000657"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.638180" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.637826" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.638268" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.638464" 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-07-28T01:56:29.633737" elapsed="0.004755"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.638651" 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-07-28T01:56:29.615443" elapsed="0.023672"/>
</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-07-28T01:56:29.568221" elapsed="0.070950"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.561034" elapsed="0.078258"/>
</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-07-28T01:56:29.650500" 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-07-28T01:56:29.650643" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.650347" elapsed="0.000325"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.651254" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323f10&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.650825" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.651797" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.651511" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.652264" 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-07-28T01:56:29.651991" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.652747" 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-07-28T01:56:29.652466" elapsed="0.000307"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.653825" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.652937" elapsed="0.000919"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.654360" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.654015" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.654914" 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-07-28T01:56:29.654572" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.655488" 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-07-28T01:56:29.655124" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.656022" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.655699" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.656590" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.656240" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.657120" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323f10&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.656789" 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-07-28T01:56:29.650007" elapsed="0.007208"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.657766" 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-07-28T01:56:29.657364" elapsed="0.000432"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.658187" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.657947" 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-07-28T01:56:29.666087" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.665788" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.670443" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.670977" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.671124" 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-07-28T01:56:29.666254" elapsed="0.004897"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.671606" 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-07-28T01:56:29.671313" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.674228" 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-07-28T01:56:29.671808" elapsed="0.002471"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.676162" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.674360" elapsed="0.001869"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.674340" elapsed="0.001914"/>
</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-07-28T01:56:29.676410" 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-07-28T01:56:29.676663" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.676517" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.676500" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.676769" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.678425" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.678483" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.665448" elapsed="0.013059"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.681155" elapsed="0.000032"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.679098" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.679080" elapsed="0.002180"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.682070" 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-07-28T01:56:29.681483" elapsed="0.000624"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.682882" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.682344" elapsed="0.000574"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.682986" elapsed="0.000054"/>
</return>
<msg time="2026-07-28T01:56:29.683251" 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-07-28T01:56:29.678717" elapsed="0.004568"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.683540" 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-07-28T01:56:29.664883" elapsed="0.019300"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.694441" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.694134" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.700920" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.701074" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.701182" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.694622" elapsed="0.006585"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.701656" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.701378" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.704886" 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-07-28T01:56:29.701908" elapsed="0.003098"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.707723" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.705103" elapsed="0.002688"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.705077" elapsed="0.002746"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.711671" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.711717" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.708030" elapsed="0.003712"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.713600" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.711821" elapsed="0.001835"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.711802" elapsed="0.001889"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.713723" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:29.713920" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.713963" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.693746" elapsed="0.020240"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.716241" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.714589" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.714571" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.716900" 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-07-28T01:56:29.716480" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.717473" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.717091" elapsed="0.000409"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.717554" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.717746" 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-07-28T01:56:29.714209" 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-07-28T01:56:29.717944" 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-07-28T01:56:29.693114" elapsed="0.025303"/>
</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-07-28T01:56:29.646640" elapsed="0.071859"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.639567" elapsed="0.079045"/>
</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-07-28T01:56:29.729845" 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-07-28T01:56:29.729998" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.729692" elapsed="0.000336"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.730647" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841800&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.730182" elapsed="0.000493"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.731126" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.730833" elapsed="0.000321"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.731639" 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-07-28T01:56:29.731336" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.732112" 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-07-28T01:56:29.731824" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.733260" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.732289" elapsed="0.001003"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.733814" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.733463" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.734416" 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-07-28T01:56:29.734069" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.734992" 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-07-28T01:56:29.734647" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.735540" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.735189" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.736089" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.735741" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.736662" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3841800&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.736305" elapsed="0.000400"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:29.729346" elapsed="0.007415"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.737314" 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-07-28T01:56:29.736915" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.737774" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.737525" 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-07-28T01:56:29.745828" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.745501" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.750236" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.750781" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.751004" 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-07-28T01:56:29.745984" elapsed="0.005056"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.751677" 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-07-28T01:56:29.751281" elapsed="0.000460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.755365" 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-07-28T01:56:29.751953" elapsed="0.003484"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.758211" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.755603" elapsed="0.002704"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.755573" elapsed="0.002774"/>
</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-07-28T01:56:29.758579" 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-07-28T01:56:29.758919" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.758709" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.758686" elapsed="0.000338"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.759069" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:29.761428" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.761550" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.745154" elapsed="0.016432"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.763870" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.762202" elapsed="0.001714"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.762183" elapsed="0.001755"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.764527" 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-07-28T01:56:29.764095" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.765089" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.764721" elapsed="0.000394"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.765165" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:29.765349" 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-07-28T01:56:29.761857" 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-07-28T01:56:29.765585" 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-07-28T01:56:29.744585" elapsed="0.021466"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.774437" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.774121" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.779878" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.780045" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.780155" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.774620" elapsed="0.005560"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.780637" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.780353" elapsed="0.000329"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.782946" 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-07-28T01:56:29.780843" elapsed="0.002154"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.784887" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.783066" elapsed="0.001870"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.783047" elapsed="0.001911"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.788828" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.788894" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.785122" elapsed="0.003803"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.791596" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.789050" elapsed="0.002675"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.789023" elapsed="0.002749"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.791836" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:56:29.792139" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.792203" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.773730" elapsed="0.018506"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.795386" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.793077" elapsed="0.002372"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.793051" elapsed="0.002450"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.796308" 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-07-28T01:56:29.795709" elapsed="0.000638"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.797166" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.796611" elapsed="0.000594"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.797278" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:29.797583" 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-07-28T01:56:29.792573" elapsed="0.005046"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.797867" 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-07-28T01:56:29.772885" elapsed="0.025484"/>
</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-07-28T01:56:29.725984" elapsed="0.072443"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.718871" elapsed="0.079700"/>
</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-07-28T01:56:29.810069" 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-07-28T01:56:29.810205" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.809927" elapsed="0.000321"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.810847" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5300&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.810401" elapsed="0.000475"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.811335" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.811043" elapsed="0.000320"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.811837" 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-07-28T01:56:29.811545" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.812312" 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-07-28T01:56:29.812019" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.813248" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.812509" elapsed="0.000770"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.813807" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.813468" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.814351" 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-07-28T01:56:29.814018" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.814911" 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-07-28T01:56:29.814566" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.815440" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.815107" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.816035" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.815693" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.816600" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5300&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.816247" 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-07-28T01:56:29.809573" elapsed="0.007140"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.817272" 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-07-28T01:56:29.816868" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.817734" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.817485" 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-07-28T01:56:29.825848" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.825549" elapsed="0.000326"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.830714" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.831214" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.831339" 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-07-28T01:56:29.826019" elapsed="0.005347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.831813" 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-07-28T01:56:29.831544" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.834621" 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-07-28T01:56:29.832002" elapsed="0.002671"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.836601" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.834744" elapsed="0.001935"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.834725" elapsed="0.001981"/>
</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-07-28T01:56:29.836849" 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-07-28T01:56:29.837074" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.836940" elapsed="0.000185"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.836923" elapsed="0.000227"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.837183" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.838870" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.838915" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.825207" elapsed="0.013731"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.841251" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.839588" elapsed="0.001708"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.839570" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.841898" 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-07-28T01:56:29.841479" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.842468" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.842086" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.842546" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.842726" 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-07-28T01:56:29.839236" elapsed="0.003515"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.842924" 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-07-28T01:56:29.824620" elapsed="0.018767"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.851288" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.850989" elapsed="0.000325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.856218" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.856370" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.856488" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.851445" elapsed="0.005070"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.856934" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.856680" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.859155" 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-07-28T01:56:29.857123" 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-07-28T01:56:29.861072" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.859274" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.859255" elapsed="0.001887"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.863988" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.864033" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.861281" elapsed="0.002776"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.866031" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.864134" elapsed="0.001953"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.864115" elapsed="0.001997"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.866145" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:29.866337" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.866380" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.850610" 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-07-28T01:56:29.868588" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.866968" elapsed="0.001665"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.866951" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.869201" 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-07-28T01:56:29.868802" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.869804" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.869430" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.869881" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.870060" 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-07-28T01:56:29.866634" 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-07-28T01:56:29.870242" 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-07-28T01:56:29.849980" elapsed="0.020727"/>
</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-07-28T01:56:29.805929" elapsed="0.064835"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.798819" elapsed="0.072053"/>
</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-07-28T01:56:29.881883" 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-07-28T01:56:29.882012" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.881748" elapsed="0.000293"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.882617" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.882191" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.883078" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.882801" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.883560" 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-07-28T01:56:29.883256" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.884009" 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-07-28T01:56:29.883740" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.884879" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.884184" elapsed="0.000726"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.885397" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.885067" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.885934" 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-07-28T01:56:29.885611" elapsed="0.000364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.886465" 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-07-28T01:56:29.886128" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.886973" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.886661" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.887528" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.887168" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.888047" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.887727" 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-07-28T01:56:29.881399" elapsed="0.006745"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.888692" 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-07-28T01:56:29.888294" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.889179" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.888914" elapsed="0.000329"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.897202" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.896902" elapsed="0.000327"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.902049" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.902549" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.902652" 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-07-28T01:56:29.897359" elapsed="0.005318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.903094" 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-07-28T01:56:29.902841" elapsed="0.000299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.905669" 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-07-28T01:56:29.903294" elapsed="0.002428"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.907601" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.905791" elapsed="0.001875"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.905772" 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-07-28T01:56:29.907838" 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-07-28T01:56:29.908063" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.907928" elapsed="0.000187"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.907912" elapsed="0.000226"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.908169" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.909807" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.909852" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.896584" elapsed="0.013290"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.912019" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.910412" elapsed="0.001651"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.910394" elapsed="0.001691"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.912643" 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-07-28T01:56:29.912231" elapsed="0.000438"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.913181" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.912832" elapsed="0.000374"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.913288" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:29.913489" 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-07-28T01:56:29.910084" elapsed="0.003432"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.913673" 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-07-28T01:56:29.895995" elapsed="0.018127"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.921922" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.921626" elapsed="0.000322"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.926762" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.926927" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:29.927024" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.922077" elapsed="0.004972"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.927484" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:29.927209" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.929864" 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-07-28T01:56:29.927675" elapsed="0.002241"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.931782" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.929986" elapsed="0.001844"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.929967" elapsed="0.001886"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.934705" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:29.934757" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:29.931991" elapsed="0.002789"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.936580" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.934858" elapsed="0.001778"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.934839" elapsed="0.001821"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:29.936693" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:56:29.936886" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:29.936930" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.921235" elapsed="0.015718"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.939128" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.937509" elapsed="0.001663"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.937490" elapsed="0.001704"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.939761" 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-07-28T01:56:29.939341" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.940300" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.939950" elapsed="0.000376"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.940375" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.940570" 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-07-28T01:56:29.937165" 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-07-28T01:56:29.940753" 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-07-28T01:56:29.920622" elapsed="0.020615"/>
</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-07-28T01:56:29.878026" elapsed="0.063268"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.871111" elapsed="0.070293"/>
</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-07-28T01:56:29.952408" 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-07-28T01:56:29.952550" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.952270" elapsed="0.000309"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:29.953146" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65670&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:29.952733" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.953641" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:29.953329" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.954110" 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-07-28T01:56:29.953825" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:29.954630" 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-07-28T01:56:29.954288" elapsed="0.000368"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:29.955710" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.954807" elapsed="0.000934"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.956296" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.955941" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.956859" 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-07-28T01:56:29.956514" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.957404" 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-07-28T01:56:29.957056" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.957955" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:29.957617" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.958544" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:29.958159" elapsed="0.000433"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.959081" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f65670&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:29.958753" 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-07-28T01:56:29.951929" elapsed="0.007266"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.959771" 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-07-28T01:56:29.959347" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.960221" level="INFO">&lt;?xml version="1.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-07-28T01:56:29.959957" elapsed="0.000368"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.968316" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.968001" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.973111" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.973643" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:29.973746" 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-07-28T01:56:29.968488" elapsed="0.005283"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.974213" 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-07-28T01:56:29.973942" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.976835" 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-07-28T01:56:29.974416" elapsed="0.002470"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:29.978774" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:29.976956" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.976937" elapsed="0.001929"/>
</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-07-28T01:56:29.979008" elapsed="0.000041"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:29.979266" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:29.979119" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:29.979102" elapsed="0.000238"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.979372" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:29.981051" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:29.981096" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:29.967666" elapsed="0.013452"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:29.983290" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:29.981673" elapsed="0.001661"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:29.981655" elapsed="0.001700"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.983929" 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-07-28T01:56:29.983529" elapsed="0.000426"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.984569" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:29.984193" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:29.984645" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:29.984822" 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-07-28T01:56:29.981329" elapsed="0.003518"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:29.985003" 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-07-28T01:56:29.967045" elapsed="0.018435"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:29.993489" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:29.993169" elapsed="0.000348"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:29.999611" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:29.999992" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.000105" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:29.993656" elapsed="0.006485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.000583" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.000302" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.002883" 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-07-28T01:56:30.000784" elapsed="0.002150"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.004828" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.003013" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.002984" elapsed="0.001916"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.007843" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.007900" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.005057" elapsed="0.002867"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.009807" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.008002" elapsed="0.001861"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.007984" elapsed="0.001914"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.009932" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:30.010127" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.010171" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:29.992776" elapsed="0.017428"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.012411" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.010773" elapsed="0.001704"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.010755" elapsed="0.001745"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.013070" 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-07-28T01:56:30.012649" elapsed="0.000448"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.013717" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.013257" elapsed="0.000486"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.013792" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:30.013981" 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-07-28T01:56:30.010417" elapsed="0.003591"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.014165" 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-07-28T01:56:29.992117" elapsed="0.022536"/>
</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-07-28T01:56:29.948581" elapsed="0.066128"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:29.941657" elapsed="0.073172"/>
</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-07-28T01:56:30.026623" 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-07-28T01:56:30.026752" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.026472" elapsed="0.000308"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.027371" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d38d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.026945" elapsed="0.000453"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.027912" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.027608" elapsed="0.000331"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.028380" 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-07-28T01:56:30.028103" elapsed="0.000303"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.028864" 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-07-28T01:56:30.028587" elapsed="0.000303"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.029992" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.029056" elapsed="0.000969"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.030548" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.030186" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.031088" 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-07-28T01:56:30.030753" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.031645" 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-07-28T01:56:30.031288" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.032173" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.031840" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.032731" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.032375" elapsed="0.000402"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.033306" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d38d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.032930" elapsed="0.000420"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:56:30.026109" elapsed="0.007297"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.034213" 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-07-28T01:56:30.033802" elapsed="0.000442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.034687" level="INFO">&lt;?xml version="1.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-07-28T01:56:30.034396" elapsed="0.000353"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.042680" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.042347" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.048048" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.048567" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.048705" 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-07-28T01:56:30.042834" elapsed="0.005901"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.049190" 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-07-28T01:56:30.048930" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.051822" 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-07-28T01:56:30.049391" elapsed="0.002485"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.053817" elapsed="0.000035"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.051951" elapsed="0.001952"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.051930" elapsed="0.002000"/>
</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-07-28T01:56:30.054091" 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-07-28T01:56:30.054334" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.054184" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.054168" elapsed="0.000242"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.054442" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.056150" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.056196" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.042028" elapsed="0.014190"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.058496" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.056837" elapsed="0.001707"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.056819" elapsed="0.001748"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.059153" 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-07-28T01:56:30.058719" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.059725" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.059340" elapsed="0.000411"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.059800" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:30.059994" 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-07-28T01:56:30.056480" elapsed="0.003540"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.060177" elapsed="0.000432"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.041424" elapsed="0.019262"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.068968" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.068657" elapsed="0.000338"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.074614" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.074792" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.074904" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.069138" elapsed="0.005792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.075357" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.075089" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.077704" 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-07-28T01:56:30.075564" elapsed="0.002241"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.079712" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.077889" elapsed="0.001873"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.077870" elapsed="0.001915"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.082773" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.082819" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.079926" elapsed="0.002915"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.084699" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.082918" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.082900" elapsed="0.001879"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.084812" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:30.085021" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.085064" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.068240" elapsed="0.016846"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.087296" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.085670" elapsed="0.001674"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.085640" elapsed="0.001726"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.087957" 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-07-28T01:56:30.087540" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.088550" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.088156" elapsed="0.000420"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.088625" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:30.088819" 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-07-28T01:56:30.085313" elapsed="0.003532"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.089002" elapsed="0.000509"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.067591" elapsed="0.021995"/>
</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-07-28T01:56:30.022355" elapsed="0.067291"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.015082" elapsed="0.074690"/>
</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-07-28T01:56:30.103059" 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-07-28T01:56:30.103225" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.102910" elapsed="0.000344"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.103921" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ed6c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.103415" elapsed="0.000540"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.104425" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.104134" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.104919" 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-07-28T01:56:30.104630" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.105380" 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-07-28T01:56:30.105096" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.106401" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:30.105581" elapsed="0.000851"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.106961" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.106612" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.107582" 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-07-28T01:56:30.107231" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.108168" 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-07-28T01:56:30.107785" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.108717" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.108361" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.109254" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:30.108931" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.109830" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b05ed6c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.109477" 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-07-28T01:56:30.102535" elapsed="0.007396"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.110515" 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-07-28T01:56:30.110083" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.110957" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.110710" 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-07-28T01:56:30.119062" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.118754" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.125025" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.125615" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.125747" 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-07-28T01:56:30.119232" elapsed="0.006542"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.126210" 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-07-28T01:56:30.125941" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.129020" 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-07-28T01:56:30.126404" elapsed="0.002681"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.131016" elapsed="0.000035"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.129200" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.129174" elapsed="0.001943"/>
</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-07-28T01:56:30.131264" 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-07-28T01:56:30.131543" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.131369" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.131352" elapsed="0.000267"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.131652" elapsed="0.000017"/>
</return>
<msg time="2026-07-28T01:56:30.134011" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.134074" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.118404" elapsed="0.015702"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.137242" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.134932" elapsed="0.002373"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.134907" elapsed="0.002429"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.138154" 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-07-28T01:56:30.137573" elapsed="0.000618"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.138949" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.138430" elapsed="0.000569"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.139069" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:30.139324" 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-07-28T01:56:30.134419" elapsed="0.004973"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.139646" elapsed="0.000576"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.117814" elapsed="0.022511"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.149357" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.149041" elapsed="0.000342"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.154944" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.155096" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.155196" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.149531" elapsed="0.005705"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.155695" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.155406" elapsed="0.000338"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.158846" 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-07-28T01:56:30.155976" 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-07-28T01:56:30.161561" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.159013" elapsed="0.002617"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.158987" elapsed="0.002675"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.165184" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.165229" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.161859" elapsed="0.003393"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.167247" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.165328" elapsed="0.002013"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.165309" elapsed="0.002059"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.167402" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.167630" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.167677" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.148653" elapsed="0.019047"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.169875" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.168248" elapsed="0.001672"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.168231" elapsed="0.001711"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.170511" 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-07-28T01:56:30.170093" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.171075" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.170706" elapsed="0.000395"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.171152" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:30.171330" 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-07-28T01:56:30.167914" 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-07-28T01:56:30.171535" 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-07-28T01:56:30.148006" elapsed="0.023981"/>
</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-07-28T01:56:30.097229" elapsed="0.074815"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.090094" elapsed="0.082071"/>
</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-07-28T01:56:30.183417" 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-07-28T01:56:30.183574" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.183275" elapsed="0.000329"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.184190" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0302660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.183761" elapsed="0.000457"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.184674" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.184372" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.185127" 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-07-28T01:56:30.184851" elapsed="0.000302"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.185601" 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-07-28T01:56:30.185311" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.186545" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&gt;
    &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-07-28T01:56:30.185778" elapsed="0.000799"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.187094" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.186757" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.187637" 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-07-28T01:56:30.187292" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.188164" 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-07-28T01:56:30.187834" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.188694" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.188357" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.189258" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow:inventory"&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-07-28T01:56:30.188930" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.189804" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0302660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.189474" 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-07-28T01:56:30.182929" elapsed="0.006976"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.190444" 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-07-28T01:56:30.190056" elapsed="0.000435"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.190901" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.190656" 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-07-28T01:56:30.199069" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.198761" elapsed="0.000335"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.204527" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.205048" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.205151" 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-07-28T01:56:30.199226" elapsed="0.005950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.205632" 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-07-28T01:56:30.205351" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.208294" 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-07-28T01:56:30.205841" elapsed="0.002506"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.210239" elapsed="0.000029"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.208417" elapsed="0.001888"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.208398" elapsed="0.001932"/>
</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-07-28T01:56:30.210542" 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-07-28T01:56:30.210785" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.210636" elapsed="0.000209"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.210620" elapsed="0.000263"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.210932" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:56:30.213278" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.213400" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.198396" elapsed="0.015040"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.216599" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.214253" elapsed="0.002413"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.214228" elapsed="0.002469"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.217512" 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-07-28T01:56:30.216916" elapsed="0.000634"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.218317" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.217792" elapsed="0.000562"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.218424" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:56:30.218729" 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-07-28T01:56:30.213770" elapsed="0.004995"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.219005" elapsed="0.000575"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.197829" elapsed="0.021841"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.228663" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.228330" elapsed="0.000361"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.235082" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.235238" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.235350" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.228860" elapsed="0.006515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.235840" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.235566" elapsed="0.000319"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.238347" 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-07-28T01:56:30.236046" elapsed="0.002354"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.240329" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.238500" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.238479" elapsed="0.001937"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.243890" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.243956" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.240586" elapsed="0.003416"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.246679" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.244112" elapsed="0.002647"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.244085" elapsed="0.002721"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.246855" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:30.247142" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.247204" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.227927" elapsed="0.019323"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.250438" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.248096" elapsed="0.002432"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.248071" elapsed="0.002557"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.251485" 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-07-28T01:56:30.250862" elapsed="0.000664"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.252299" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.251773" elapsed="0.000563"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.252412" elapsed="0.000060"/>
</return>
<msg time="2026-07-28T01:56:30.252720" 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-07-28T01:56:30.247604" elapsed="0.005152"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.252992" elapsed="0.000592"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.227282" elapsed="0.026399"/>
</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-07-28T01:56:30.179529" elapsed="0.074269"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.172487" elapsed="0.081483"/>
</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-07-28T01:56:30.265620" 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-07-28T01:56:30.265788" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.265427" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.266420" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.265975" elapsed="0.000473"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.266916" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.266633" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.267383" 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-07-28T01:56:30.267109" elapsed="0.000300"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.267863" 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-07-28T01:56:30.267579" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.269020" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.268044" elapsed="0.001009"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.269589" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.269215" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.270131" 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-07-28T01:56:30.269789" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.270699" 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-07-28T01:56:30.270334" elapsed="0.000408"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.271236" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.270901" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.271799" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.271440" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.272345" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f6eca0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.272004" 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-07-28T01:56:30.265082" elapsed="0.007362"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.273075" 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-07-28T01:56:30.272624" elapsed="0.000483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.273528" level="INFO">&lt;?xml version="1.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-07-28T01:56:30.273261" 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-07-28T01:56:30.281726" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.281370" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.287281" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.287865" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.287985" 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-07-28T01:56:30.281890" elapsed="0.006123"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.288436" 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-07-28T01:56:30.288178" elapsed="0.000323"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.291139" 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-07-28T01:56:30.288647" 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-07-28T01:56:30.293086" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.291264" elapsed="0.001890"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.291243" elapsed="0.001936"/>
</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-07-28T01:56:30.293361" 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-07-28T01:56:30.293621" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.293477" elapsed="0.000207"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.293436" elapsed="0.000272"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.293744" elapsed="0.000017"/>
</return>
<msg time="2026-07-28T01:56:30.296125" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.296200" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.281037" elapsed="0.015196"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.299387" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.297034" elapsed="0.002434"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.297010" elapsed="0.002491"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.300525" 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-07-28T01:56:30.299727" elapsed="0.000837"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.301418" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.300864" elapsed="0.000617"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.301568" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:30.301830" 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-07-28T01:56:30.296552" elapsed="0.005314"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.302105" elapsed="0.000603"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.280422" elapsed="0.022378"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.311820" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.311512" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.317799" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.317960" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.318072" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.311990" elapsed="0.006107"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.318553" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.318274" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.320844" 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-07-28T01:56:30.318743" elapsed="0.002164"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.322795" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.320976" elapsed="0.001868"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.320957" elapsed="0.001912"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.325905" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.325969" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.323012" elapsed="0.002989"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.328579" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.326110" elapsed="0.002549"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.326084" elapsed="0.002620"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.328752" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:56:30.329062" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.329122" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.311107" elapsed="0.018046"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.332319" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.329993" elapsed="0.002389"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.329967" elapsed="0.002446"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.333265" 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-07-28T01:56:30.332662" elapsed="0.000640"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.334123" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.333551" elapsed="0.000610"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.334234" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:30.334520" 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-07-28T01:56:30.329471" elapsed="0.005086"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.334842" elapsed="0.000567"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.310449" elapsed="0.025091"/>
</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-07-28T01:56:30.261697" elapsed="0.073926"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.254393" elapsed="0.081399"/>
</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-07-28T01:56:30.347317" 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-07-28T01:56:30.347497" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.347172" elapsed="0.000357"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.348129" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d3650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.347686" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.348672" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.348315" elapsed="0.000384"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.349142" 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-07-28T01:56:30.348854" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.349622" 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-07-28T01:56:30.349331" elapsed="0.000317"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.350723" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.349812" elapsed="0.000945"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.351255" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.350917" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.351831" 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-07-28T01:56:30.351488" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.352379" 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-07-28T01:56:30.352028" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.352933" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:56:30.352600" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.353493" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:56:30.353146" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.354030" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d3650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.353694" 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-07-28T01:56:30.346814" elapsed="0.007313"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.354705" 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-07-28T01:56:30.354289" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.355135" level="INFO">&lt;?xml version="1.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-07-28T01:56:30.354892" 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-07-28T01:56:30.363319" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.362999" elapsed="0.000347"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.369027" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.369636" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.369742" 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-07-28T01:56:30.363492" elapsed="0.006276"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.370373" 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-07-28T01:56:30.370001" elapsed="0.000440"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.374200" 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-07-28T01:56:30.370679" elapsed="0.003595"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.376988" elapsed="0.000046"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.374383" elapsed="0.002723"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.374351" elapsed="0.002791"/>
</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-07-28T01:56:30.377351" 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-07-28T01:56:30.377713" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.377513" elapsed="0.000274"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.377487" elapsed="0.000346"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.377883" elapsed="0.000020"/>
</return>
<msg time="2026-07-28T01:56:30.380293" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.380356" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.362654" elapsed="0.017748"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.382761" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.381109" elapsed="0.001697"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.381090" elapsed="0.001737"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.383404" 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-07-28T01:56:30.382987" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.383987" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.383609" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.384075" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.384255" 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-07-28T01:56:30.380748" elapsed="0.003532"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.384476" elapsed="0.000446"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.362041" elapsed="0.022950"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.393038" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.392698" elapsed="0.000367"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.397732" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.397938" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.398049" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.393195" elapsed="0.004881"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.398509" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.398238" elapsed="0.000317"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.400748" 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-07-28T01:56:30.398700" elapsed="0.002098"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.402637" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.400867" elapsed="0.001818"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.400848" elapsed="0.001860"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.406055" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.406121" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.402850" elapsed="0.003304"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.408764" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.406270" elapsed="0.002572"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.406243" elapsed="0.002631"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.408919" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:30.409216" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.409280" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.392299" elapsed="0.017013"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.412493" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.410120" elapsed="0.002438"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.410095" elapsed="0.002497"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.413383" 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-07-28T01:56:30.412799" elapsed="0.000622"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.414203" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.413688" elapsed="0.000553"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.414311" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:30.414589" 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-07-28T01:56:30.409638" elapsed="0.004987"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.414905" elapsed="0.000605"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.391655" elapsed="0.023946"/>
</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-07-28T01:56:30.343368" elapsed="0.072315"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.336050" elapsed="0.079796"/>
</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-07-28T01:56:30.427154" 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-07-28T01:56:30.427337" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:30.427010" elapsed="0.000361"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.427980" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.427577" elapsed="0.000443"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.428538" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.428219" elapsed="0.000346"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.429013" 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-07-28T01:56:30.428725" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.429496" 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-07-28T01:56:30.429195" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.430487" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.429678" elapsed="0.000842"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.431033" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.430682" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.431625" 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-07-28T01:56:30.431262" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.432170" 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-07-28T01:56:30.431829" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.432718" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:30.432368" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.433274" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.432938" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.433819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d2e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.433491" 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-07-28T01:56:30.426650" elapsed="0.007283"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.434511" 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-07-28T01:56:30.434086" elapsed="0.000455"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.434954" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.434707" 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-07-28T01:56:30.443033" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.442722" elapsed="0.000349"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.447346" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.447994" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.448099" 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-07-28T01:56:30.443205" elapsed="0.004919"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.448646" 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-07-28T01:56:30.448360" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.451333" 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-07-28T01:56:30.448848" elapsed="0.002537"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.453299" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.451485" elapsed="0.001891"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.451441" elapsed="0.001960"/>
</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-07-28T01:56:30.453577" 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-07-28T01:56:30.453809" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.453671" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.453655" elapsed="0.000229"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.453916" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:56:30.455641" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.455687" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.442374" 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-07-28T01:56:30.457949" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.456292" elapsed="0.001702"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.456274" elapsed="0.001741"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.458611" 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-07-28T01:56:30.458177" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.459189" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.458802" elapsed="0.000413"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.459264" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.459464" 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-07-28T01:56:30.455949" 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-07-28T01:56:30.459665" 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-07-28T01:56:30.441802" elapsed="0.018340"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.468210" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.467893" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.472087" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.472438" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.472577" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.468367" elapsed="0.004237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.473161" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.472765" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.476380" 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-07-28T01:56:30.473427" 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-07-28T01:56:30.479212" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.476624" elapsed="0.002670"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.476596" elapsed="0.002730"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.482632" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.482678" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.479546" elapsed="0.003155"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.484573" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.482779" elapsed="0.001852"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.482760" elapsed="0.001896"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.484694" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.484891" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.484935" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.467502" elapsed="0.017455"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.487200" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.485549" elapsed="0.001706"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.485531" elapsed="0.001747"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.487858" 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-07-28T01:56:30.487426" elapsed="0.000459"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.488420" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.488048" elapsed="0.000398"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.488512" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:56:30.488697" 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-07-28T01:56:30.485194" 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-07-28T01:56:30.488880" 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-07-28T01:56:30.466834" elapsed="0.022522"/>
</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-07-28T01:56:30.423237" elapsed="0.066177"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.416158" elapsed="0.073394"/>
</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-07-28T01:56:30.500855" 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-07-28T01:56:30.501008" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.500695" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.501648" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.501205" elapsed="0.000471"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.502121" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.501839" elapsed="0.000308"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.502648" 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-07-28T01:56:30.502335" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.503110" 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-07-28T01:56:30.502825" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.504179" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.503290" elapsed="0.000921"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.504745" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.504373" elapsed="0.000415"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.505342" 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-07-28T01:56:30.504997" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.505949" 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-07-28T01:56:30.505568" elapsed="0.000425"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.506549" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.506170" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.507101" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.506766" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.507654" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0323420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.507301" 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-07-28T01:56:30.500336" elapsed="0.007427"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.508314" 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-07-28T01:56:30.507915" elapsed="0.000429"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.508781" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.508524" 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-07-28T01:56:30.516943" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.516624" elapsed="0.000345"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.522563" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.523093" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.523197" 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-07-28T01:56:30.517111" elapsed="0.006112"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.523680" 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-07-28T01:56:30.523385" elapsed="0.000341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.526317" 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-07-28T01:56:30.523889" elapsed="0.002480"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.528251" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.526439" elapsed="0.001881"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.526420" 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-07-28T01:56:30.528503" 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-07-28T01:56:30.528780" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.528640" elapsed="0.000194"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.528622" elapsed="0.000235"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.528889" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:56:30.531004" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.531066" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.516278" elapsed="0.014820"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.534217" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.531908" elapsed="0.002372"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.531883" elapsed="0.002427"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.535108" 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-07-28T01:56:30.534551" elapsed="0.000594"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.535915" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.535386" elapsed="0.000566"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.536021" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:30.536276" 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-07-28T01:56:30.531410" elapsed="0.004902"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.536564" 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-07-28T01:56:30.515704" elapsed="0.021511"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.545754" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.545429" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.551502" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.551662" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.551773" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.545920" elapsed="0.005879"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.552233" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.551972" elapsed="0.000307"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.554574" 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-07-28T01:56:30.552433" elapsed="0.002208"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.556547" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.554712" elapsed="0.001884"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.554693" elapsed="0.001926"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.559393" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.559439" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.556776" elapsed="0.002703"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:56:30.561682" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.559559" elapsed="0.002201"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.559540" elapsed="0.002252"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.561854" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:30.562141" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.562203" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.545038" elapsed="0.017197"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.565504" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.563117" elapsed="0.002453"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.563092" elapsed="0.002509"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.566409" 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-07-28T01:56:30.565825" elapsed="0.000621"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.567230" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.566709" elapsed="0.000557"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.567336" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:30.567625" 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-07-28T01:56:30.562625" elapsed="0.005036"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.567881" elapsed="0.000595"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:56:30.544385" elapsed="0.024182"/>
</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-07-28T01:56:30.496927" elapsed="0.071718"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.489761" elapsed="0.079054"/>
</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-07-28T01:56:30.580485" 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-07-28T01:56:30.580654" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:30.580319" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:30.581300" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67c90&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:56:30.580850" elapsed="0.000478"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.581796" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:56:30.581504" elapsed="0.000322"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.582261" 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-07-28T01:56:30.581978" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:56:30.582741" 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-07-28T01:56:30.582442" elapsed="0.000325"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.583728" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.582919" elapsed="0.000840"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.584274" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.583923" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.584840" 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-07-28T01:56:30.584500" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.585391" 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-07-28T01:56:30.585050" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.585971" level="INFO">${data} = &lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
&lt;flow 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-07-28T01:56:30.585637" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.586523" level="INFO">${upddata} = &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight:flow: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-07-28T01:56:30.586173" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.587109" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3f67c90&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:56:30.586771" 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-07-28T01:56:30.579975" elapsed="0.007231"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.587773" 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-07-28T01:56:30.587357" elapsed="0.000446"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.588212" level="INFO">&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;flow xmlns="urn:opendaylight: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-07-28T01:56:30.587957" elapsed="0.000313"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.596298" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.595984" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.601874" level="INFO">GET Request : url=http://10.30.170.50: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=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.602641" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:30.602786" 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-07-28T01:56:30.596469" elapsed="0.006368"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.603434" 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-07-28T01:56:30.603060" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.607161" 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-07-28T01:56:30.603737" elapsed="0.003512"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:56:30.609915" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-07-28T01:56:30.607346" elapsed="0.002665"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.607319" elapsed="0.002726"/>
</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-07-28T01:56:30.610259" 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-07-28T01:56:30.610613" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.610386" elapsed="0.000301"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:30.610364" elapsed="0.000355"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.610763" elapsed="0.000023"/>
</return>
<msg time="2026-07-28T01:56:30.613155" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:56:30.613223" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:56:30.595647" elapsed="0.017609"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.615689" elapsed="0.000030"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.614059" elapsed="0.001692"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.614038" elapsed="0.001734"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.616441" 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-07-28T01:56:30.616018" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.617108" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.616736" elapsed="0.000410"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.617198" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.617385" 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-07-28T01:56:30.613585" 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-07-28T01:56:30.617602" 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-07-28T01:56:30.595062" elapsed="0.023001"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.626072" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:56:30.625759" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:30.632284" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node07mswg4o5rhlt74rk8mdnpy9m9.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:30.632477" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:56:30.632577" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:56:30.626228" elapsed="0.006375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.633012" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:30.632761" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.635407" 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-07-28T01:56:30.633199" elapsed="0.002278"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.637603" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.635549" elapsed="0.002122"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.635530" elapsed="0.002172"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:56:30.641478" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:56:30.641547" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:56:30.637898" 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-07-28T01:56:30.644080" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.641686" elapsed="0.002473"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.641660" elapsed="0.002547"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:56:30.644255" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:30.644560" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:56:30.644622" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:56:30.625353" elapsed="0.019300"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:56:30.647666" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:30.645412" elapsed="0.002317"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.645387" elapsed="0.002373"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.648594" 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-07-28T01:56:30.647967" elapsed="0.000665"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.649271" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:56:30.648892" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:56:30.649348" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:30.649581" 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-07-28T01:56:30.644951" elapsed="0.004657"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:56:30.649766" 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-07-28T01:56:30.624723" elapsed="0.025502"/>
</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-07-28T01:56:30.576571" elapsed="0.073712"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.569062" elapsed="0.081331"/>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-07-28T01:56:30.651329" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:56:30.651248" elapsed="0.000147"/>
</kw>
<doc>Test suite for Stats Manager flows collection</doc>
<status status="PASS" start="2026-07-28T01:54:51.625428" elapsed="99.026001"/>
</suite>
<kw name="Stop Mininet" owner="Utils" type="TEARDOWN">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.654159" 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-07-28T01:56:30.653940" elapsed="0.000264"/>
</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-07-28T01:56:30.654340" elapsed="0.000169"/>
</kw>
<kw name="Read" owner="SSHLibrary">
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-07-28T01:56:30.654640" elapsed="0.000148"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:56:30.658046" 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-07-28T01:56:30.654912" elapsed="0.003190"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:56:30.792675" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 137.151 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:56:30.658240" elapsed="0.134505"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:56:30.792930" elapsed="0.000186"/>
</kw>
<doc>Cleanup/Shutdown work that should be done at the completion of all
tests</doc>
<status status="PASS" start="2026-07-28T01:56:30.653675" elapsed="0.139499"/>
</kw>
<doc>Test suite for the OpenDaylight OpenFlow statistics manager</doc>
<status status="PASS" start="2026-07-28T01:54:11.201424" elapsed="139.591781"/>
</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-07-28T01:56:30.855879" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7868a38688d0&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-07-28T01:56:30.855647" elapsed="0.000264"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.856411" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7868a38688d0&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-07-28T01:56:30.856079" elapsed="0.000390"/>
</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-07-28T01:56:30.856617" elapsed="0.000307"/>
</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-07-28T01:56:30.857076" elapsed="0.000402"/>
</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-07-28T01:56:30.857631" elapsed="0.000341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:30.868262" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.224
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.50
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-07-28T01:56:30.858124" elapsed="0.010187"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-07-28T01:56:30.871364" level="INFO">Running command 'ping 10.30.171.224 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-07-28T01:56:30.875848" level="INFO">${output} = PING 10.30.171.224 (10.30.171.224) 56(84) bytes of data.
64 bytes from 10.30.171.224: icmp_seq=1 ttl=64 time=0.688 ms

--- 10.30.171.224 ping statistics ---
1 packets transmitted, 1 received, 0% packe...</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-07-28T01:56:30.870477" elapsed="0.005402"/>
</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-07-28T01:56:30.876036" elapsed="0.000378"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-07-28T01:56:30.868488" elapsed="0.008008"/>
</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-07-28T01:56:30.879816" elapsed="0.000393"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.877948" elapsed="0.002360"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.877925" elapsed="0.002410"/>
</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-07-28T01:56:30.882667" elapsed="0.000509"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.880431" elapsed="0.002809"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.880412" elapsed="0.002914"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:56:30.892674" 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-07-28T01:56:30.886615" elapsed="0.006106"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.883411" elapsed="0.009375"/>
</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-07-28T01:56:30.893095" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:30.892824" elapsed="0.000357"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.883387" elapsed="0.009827"/>
</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-07-28T01:56:30.899398" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:56:31.519804" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:54:13 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:56:30.895384" elapsed="0.624648"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.893298" elapsed="0.626824"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:30.893275" elapsed="0.626917"/>
</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-07-28T01:56:31.523289" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:31.520356" elapsed="0.003028"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:31.524221" 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-07-28T01:56:31.523747" elapsed="0.000501"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:31.523495" elapsed="0.000791"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.520311" elapsed="0.003997"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-07-28T01:56:31.524362" elapsed="0.000048"/>
</return>
<msg time="2026-07-28T01:56:31.524596" 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-07-28T01:56:30.877716" elapsed="0.646907"/>
</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-07-28T01:56:31.524795" elapsed="0.000340"/>
</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-07-28T01:56:31.527558" elapsed="0.001736"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:31.525706" elapsed="0.003636"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.525687" elapsed="0.003680"/>
</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-07-28T01:56:31.531172" elapsed="0.001985"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:31.529423" elapsed="0.003775"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.529406" elapsed="0.003816"/>
</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-07-28T01:56:31.535037" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:31.533278" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.533262" elapsed="0.001857"/>
</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-07-28T01:56:31.536948" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:31.535173" elapsed="0.001833"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.535158" elapsed="0.001871"/>
</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-07-28T01:56:31.525489" elapsed="0.011588"/>
</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-07-28T01:56:31.541232" elapsed="0.000349"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:31.539254" elapsed="0.002368"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.539236" elapsed="0.002412"/>
</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-07-28T01:56:31.543544" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:31.541705" elapsed="0.001898"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:31.541688" elapsed="0.001940"/>
</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-07-28T01:56:31.539024" elapsed="0.004652"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:56:32.544388" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:56:31.543827" elapsed="1.000868"/>
</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-07-28T01:56:32.550082" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-07-28T01:56:32.549853" elapsed="0.000304"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:32.545977" elapsed="0.004226"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.545916" elapsed="0.004324"/>
</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-07-28T01:56:32.552949" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:32.550318" elapsed="0.002718"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.550295" elapsed="0.002780"/>
</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-07-28T01:56:32.545384" elapsed="0.007763"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-07-28T01:56:31.538805" elapsed="1.014390"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-07-28T01:56:31.537150" elapsed="1.016098"/>
</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-07-28T01:56:30.877205" elapsed="1.676126"/>
</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-07-28T01:56:32.556643" elapsed="0.002345"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:32.554051" elapsed="0.005004"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.554025" elapsed="0.005067"/>
</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-07-28T01:56:32.561535" elapsed="0.001902"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:32.559174" elapsed="0.004321"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.559151" elapsed="0.004370"/>
</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-07-28T01:56:32.565330" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:32.563577" elapsed="0.001810"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.563561" elapsed="0.001851"/>
</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-07-28T01:56:32.567214" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:32.565489" elapsed="0.001786"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.565451" elapsed="0.001847"/>
</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-07-28T01:56:32.553762" elapsed="0.013584"/>
</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-07-28T01:56:32.571319" elapsed="0.000339"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:32.569549" elapsed="0.002148"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.569530" elapsed="0.002193"/>
</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-07-28T01:56:32.573644" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:32.571778" elapsed="0.001923"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:32.571761" elapsed="0.001965"/>
</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-07-28T01:56:32.569289" elapsed="0.004485"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.574432" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:56:32.573944" elapsed="1.000756"/>
</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-07-28T01:56:33.583200" 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-07-28T01:56:33.583037" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.578216" elapsed="0.005068"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.577977" elapsed="0.005335"/>
</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-07-28T01:56:33.585306" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.583481" elapsed="0.001882"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.583447" elapsed="0.001941"/>
</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-07-28T01:56:33.576940" elapsed="0.008537"/>
</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-07-28T01:56:33.575322" elapsed="0.010208"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-07-28T01:56:32.569083" elapsed="1.016482"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-07-28T01:56:32.567408" elapsed="1.018192"/>
</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-07-28T01:56:33.587372" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.585670" elapsed="0.001764"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.585652" elapsed="0.001820"/>
</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-07-28T01:56:33.589313" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.587531" elapsed="0.001846"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.587515" elapsed="0.001896"/>
</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-07-28T01:56:30.876818" elapsed="2.712665"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:33.590029" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b20e17d0&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-07-28T01:56:33.589652" elapsed="0.000570"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:30.855286" elapsed="2.735007"/>
</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-07-28T01:56:33.592228" 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-07-28T01:56:33.591426" elapsed="0.000868"/>
</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-07-28T01:56:33.595247" elapsed="0.001852"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.593333" elapsed="0.003806"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.593109" elapsed="0.004056"/>
</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-07-28T01:56:33.599136" elapsed="0.002046"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.597223" elapsed="0.004001"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.597206" elapsed="0.004043"/>
</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-07-28T01:56:33.603209" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.601318" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.601301" elapsed="0.001990"/>
</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-07-28T01:56:33.605274" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.603346" elapsed="0.001989"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.603331" elapsed="0.002028"/>
</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-07-28T01:56:33.592857" elapsed="0.012552"/>
</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-07-28T01:56:33.613254" elapsed="0.001824"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.611304" elapsed="0.003813"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.611284" elapsed="0.003858"/>
</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-07-28T01:56:33.617074" elapsed="0.002108"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.615198" elapsed="0.004025"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.615182" elapsed="0.004112"/>
</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-07-28T01:56:33.621271" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.619356" elapsed="0.001973"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.619339" elapsed="0.002015"/>
</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-07-28T01:56:33.623348" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.621410" elapsed="0.002036"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.621394" elapsed="0.002091"/>
</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-07-28T01:56:33.611030" elapsed="0.012506"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.624275" 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-07-28T01:56:33.623919" elapsed="0.000416"/>
</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-07-28T01:56:33.626801" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.624851" elapsed="0.002167"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.624832" elapsed="0.002211"/>
</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-07-28T01:56:33.628941" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.627098" elapsed="0.001963"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.627082" elapsed="0.002004"/>
</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-07-28T01:56:33.624575" elapsed="0.004560"/>
</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-07-28T01:56:33.631816" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-07-28T01:56:33.715785" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:33.716336" 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-07-28T01:56:33.631579" elapsed="0.084824"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.629734" elapsed="0.086819"/>
</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-07-28T01:56:33.717133" elapsed="0.000116"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.716623" elapsed="0.000713"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.629715" elapsed="0.087673"/>
</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-07-28T01:56:33.722353" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.717628" elapsed="0.004895"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.723998" 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-07-28T01:56:33.722957" elapsed="0.001105"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.722579" elapsed="0.001635"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.717520" elapsed="0.006749"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:33.724354" elapsed="0.000176"/>
</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-07-28T01:56:33.629397" elapsed="0.095378"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-07-28T01:56:33.623782" elapsed="0.101077"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.725449" 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-07-28T01:56:33.725111" elapsed="0.000412"/>
</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-07-28T01:56:33.729574" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.726047" elapsed="0.003749"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.726029" elapsed="0.003798"/>
</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-07-28T01:56:33.731792" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.729952" elapsed="0.001899"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.729931" elapsed="0.001944"/>
</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-07-28T01:56:33.725795" elapsed="0.006128"/>
</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-07-28T01:56:33.734607" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:33.773177" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:33.773631" 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-07-28T01:56:33.734405" elapsed="0.039285"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.732542" elapsed="0.041240"/>
</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-07-28T01:56:33.774377" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.773916" elapsed="0.000746"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.732524" elapsed="0.042195"/>
</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-07-28T01:56:33.779828" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.774930" elapsed="0.005042"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.781607" 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-07-28T01:56:33.780483" elapsed="0.001214"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.780030" elapsed="0.001755"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.774890" elapsed="0.006947"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:33.781923" elapsed="0.000074"/>
</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-07-28T01:56:33.732236" elapsed="0.050075"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-07-28T01:56:33.724980" elapsed="0.057418"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.783917" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:33.783172" elapsed="0.000850"/>
</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-07-28T01:56:33.786447" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.784579" elapsed="0.002137"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.784554" elapsed="0.002187"/>
</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-07-28T01:56:33.788663" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.786795" elapsed="0.001921"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.786779" elapsed="0.001999"/>
</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-07-28T01:56:33.784256" elapsed="0.004577"/>
</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-07-28T01:56:33.791601" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.50'.</msg>
<msg time="2026-07-28T01:56:33.837233" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:33.837644" 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-07-28T01:56:33.791337" elapsed="0.046375"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.789408" elapsed="0.048394"/>
</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-07-28T01:56:33.838327" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.837861" elapsed="0.000644"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.789390" elapsed="0.049167"/>
</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-07-28T01:56:33.843396" elapsed="0.000148"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.838692" elapsed="0.004953"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.844735" 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-07-28T01:56:33.843991" elapsed="0.000781"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.843705" elapsed="0.001118"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.838654" elapsed="0.006201"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:33.844970" elapsed="0.000067"/>
</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-07-28T01:56:33.789093" elapsed="0.056127"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</var>
<status status="PASS" start="2026-07-28T01:56:33.782733" elapsed="0.062556"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.846330" 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-07-28T01:56:33.845862" elapsed="0.000549"/>
</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-07-28T01:56:33.849901" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.847234" elapsed="0.003035"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.847208" elapsed="0.003097"/>
</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-07-28T01:56:33.853533" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.850381" elapsed="0.003234"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.850358" elapsed="0.003369"/>
</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-07-28T01:56:33.846798" elapsed="0.007015"/>
</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-07-28T01:56:33.857084" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-07-28T01:56:33.900146" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:33.900565" 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-07-28T01:56:33.856874" elapsed="0.043759"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.854636" elapsed="0.046086"/>
</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-07-28T01:56:33.901150" elapsed="0.000231"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.900782" elapsed="0.000721"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.854611" elapsed="0.046944"/>
</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-07-28T01:56:33.906230" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.901689" elapsed="0.004702"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.907846" 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-07-28T01:56:33.906866" elapsed="0.001106"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.906478" elapsed="0.001579"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.901652" elapsed="0.006458"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:33.908189" 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-07-28T01:56:33.854173" elapsed="0.054409"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-07-28T01:56:33.845582" elapsed="0.063087"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:56:33.623590" elapsed="0.285150"/>
</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-07-28T01:56:33.608829" elapsed="0.300139"/>
</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-07-28T01:56:33.912511" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.910206" elapsed="0.002552"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.910101" elapsed="0.002682"/>
</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-07-28T01:56:33.914767" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.912838" elapsed="0.001982"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.912822" elapsed="0.002025"/>
</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-07-28T01:56:33.909521" elapsed="0.005377"/>
</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-07-28T01:56:33.927503" elapsed="0.001758"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.925569" elapsed="0.003731"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.925550" elapsed="0.003820"/>
</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-07-28T01:56:33.931337" elapsed="0.002111"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.929429" elapsed="0.004075"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.929412" elapsed="0.004118"/>
</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-07-28T01:56:33.935494" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.933586" elapsed="0.002003"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.933570" elapsed="0.002043"/>
</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-07-28T01:56:33.937737" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.935668" elapsed="0.002132"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.935652" elapsed="0.002172"/>
</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-07-28T01:56:33.925314" elapsed="0.012559"/>
</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-07-28T01:56:33.940283" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.938375" elapsed="0.002130"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.938357" elapsed="0.002173"/>
</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-07-28T01:56:33.942732" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.940586" elapsed="0.002200"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.940570" elapsed="0.002240"/>
</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-07-28T01:56:33.938135" elapsed="0.004724"/>
</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-07-28T01:56:33.945542" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:33.959674" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:33.960077" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:33.945347" elapsed="0.014818"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.943439" elapsed="0.016911"/>
</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-07-28T01:56:33.961230" elapsed="0.000063"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.960443" elapsed="0.000941"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.943420" elapsed="0.018018"/>
</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-07-28T01:56:33.966931" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:33.961701" elapsed="0.005357"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.967996" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:33.967296" elapsed="0.000741"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.967097" elapsed="0.000992"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.961659" elapsed="0.006510"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:33.968224" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:56:33.968482" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:33.943162" elapsed="0.025404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:33.969261" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16716  bytes 219372250 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9004  bytes 1552666 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2  bytes 176 (176.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-07-28T01:56:33.968790" elapsed="0.000572"/>
</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-07-28T01:56:33.973303" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:34.021368" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:34.021777" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:33.973058" elapsed="0.048781"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:33.970374" elapsed="0.051566"/>
</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-07-28T01:56:34.022416" elapsed="0.000084"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:34.022007" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:33.970349" elapsed="0.052285"/>
</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-07-28T01:56:34.027072" elapsed="0.000063"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:34.022779" elapsed="0.004443"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:34.028561" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:34.027629" elapsed="0.000996"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:34.027277" elapsed="0.001430"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:34.022739" elapsed="0.006018"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:34.028839" elapsed="0.000075"/>
</return>
<msg time="2026-07-28T01:56:34.029299" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:33.969880" elapsed="0.059483"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:34.030219" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:34.029741" elapsed="0.000562"/>
</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-07-28T01:56:34.031918" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:34.031125" elapsed="0.000909">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:34.030800" elapsed="0.001436">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:34.030778" elapsed="0.001510">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:34.032642" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:34.032408" elapsed="0.000317"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:34.032383" elapsed="0.000376"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:34.030732" elapsed="0.002092">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:34.030388" elapsed="0.002529">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:33.921774" elapsed="0.111329">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.053722" elapsed="0.001783"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.051366" elapsed="0.004191"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.051333" elapsed="0.004251"/>
</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-07-28T01:56:35.057447" elapsed="0.002025"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.055653" elapsed="0.003864"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.055636" elapsed="0.003906"/>
</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-07-28T01:56:35.061401" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.059601" elapsed="0.001874"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.059584" elapsed="0.001916"/>
</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-07-28T01:56:35.063334" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.061556" elapsed="0.001840"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.061540" elapsed="0.001879"/>
</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-07-28T01:56:35.050977" elapsed="0.012509"/>
</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-07-28T01:56:35.065767" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.063969" elapsed="0.002035"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.063951" elapsed="0.002077"/>
</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-07-28T01:56:35.067905" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.066094" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.066076" elapsed="0.001916"/>
</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-07-28T01:56:35.063717" elapsed="0.004324"/>
</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-07-28T01:56:35.070568" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:35.083713" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:35.083954" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:35.070373" elapsed="0.013644"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.068603" elapsed="0.015541"/>
</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-07-28T01:56:35.084609" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.084205" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.068585" elapsed="0.016217"/>
</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-07-28T01:56:35.089170" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.084930" elapsed="0.004376"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:35.090616" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:35.089713" elapsed="0.000967"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.089359" elapsed="0.001403"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.084895" elapsed="0.005933"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:35.090909" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:56:35.091261" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:35.068325" elapsed="0.022997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:35.092429" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16747  bytes 219375366 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9035  bytes 1565136 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 1  bytes 108 (108.0 B)
        RX errors 0  dropped 1  overruns 0  frame 0
        TX packets 5  bytes 426 (426.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-07-28T01:56:35.091716" elapsed="0.000912"/>
</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-07-28T01:56:35.095260" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:35.185428" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:35.185861" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:35.095091" elapsed="0.090831"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.093321" elapsed="0.092717"/>
</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-07-28T01:56:35.186562" elapsed="0.000075"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.186104" elapsed="0.000615"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.093303" elapsed="0.093467"/>
</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-07-28T01:56:35.191761" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.186905" elapsed="0.004978"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:35.192756" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:35.192124" elapsed="0.000673"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:35.191921" elapsed="0.000929"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:35.186869" elapsed="0.006014"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:35.192937" elapsed="0.000062"/>
</return>
<msg time="2026-07-28T01:56:35.193192" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:35.093024" elapsed="0.100207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:35.193924" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.193486" elapsed="0.000524"/>
</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-07-28T01:56:35.195525" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.194837" elapsed="0.000799">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:35.194503" elapsed="0.001242">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:35.194481" elapsed="0.001401">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.196228" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:35.195995" elapsed="0.000319"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:35.195969" elapsed="0.000380"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:35.194416" elapsed="0.002000">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.194092" elapsed="0.002439">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:35.045547" elapsed="0.151158">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.215637" elapsed="0.001773"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.213741" elapsed="0.003737"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.213716" elapsed="0.003789"/>
</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-07-28T01:56:36.219339" elapsed="0.002033"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.217571" elapsed="0.003843"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.217547" elapsed="0.003892"/>
</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-07-28T01:56:36.223338" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.221520" elapsed="0.001886"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.221502" elapsed="0.001927"/>
</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-07-28T01:56:36.225479" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.223501" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.223484" elapsed="0.002080"/>
</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-07-28T01:56:36.213475" elapsed="0.012142"/>
</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-07-28T01:56:36.227930" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.226116" elapsed="0.002055"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.226099" elapsed="0.002097"/>
</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-07-28T01:56:36.230060" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.228250" elapsed="0.001864"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.228234" elapsed="0.001903"/>
</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-07-28T01:56:36.225866" elapsed="0.004332"/>
</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-07-28T01:56:36.233084" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:36.246707" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:36.247172" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:36.232885" elapsed="0.014360"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.230807" elapsed="0.016556"/>
</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-07-28T01:56:36.248079" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.247553" elapsed="0.000673"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.230789" elapsed="0.017488"/>
</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-07-28T01:56:36.252130" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.248495" elapsed="0.003725"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:36.253121" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:36.252494" elapsed="0.000760"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.252257" elapsed="0.001069"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.248406" elapsed="0.004955"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:36.253417" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:56:36.253708" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:36.230508" elapsed="0.023243"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:36.254434" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16765  bytes 219377018 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9054  bytes 1568826 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 1  bytes 108 (108.0 B)
        RX errors 0  dropped 1  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-07-28T01:56:36.253983" elapsed="0.000578"/>
</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-07-28T01:56:36.258799" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:36.349649" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:36.350088" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:36.258509" elapsed="0.091642"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.255635" elapsed="0.094628"/>
</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-07-28T01:56:36.350858" elapsed="0.000061"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.350332" elapsed="0.000670"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.255603" elapsed="0.095450"/>
</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-07-28T01:56:36.355507" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.351195" elapsed="0.004458"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:36.356990" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:36.356035" elapsed="0.001018"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:36.355707" elapsed="0.001427"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:36.351158" elapsed="0.006026"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:36.357274" elapsed="0.000074"/>
</return>
<msg time="2026-07-28T01:56:36.357745" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:36.254991" elapsed="0.102831"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:36.358944" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.358186" elapsed="0.000890"/>
</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-07-28T01:56:36.360836" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.360162" elapsed="0.000790">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:36.359811" elapsed="0.001258">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:36.359779" elapsed="0.001347">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.361452" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:36.361231" elapsed="0.000417"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:36.361206" elapsed="0.000484"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:36.359706" elapsed="0.002062">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.359200" elapsed="0.002667">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:36.209888" elapsed="0.152144">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.381024" elapsed="0.001733"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.378245" elapsed="0.004562"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.378212" elapsed="0.004621"/>
</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-07-28T01:56:37.384637" elapsed="0.001938"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.382891" elapsed="0.003726"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.382874" elapsed="0.003768"/>
</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-07-28T01:56:37.388423" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.386698" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.386682" elapsed="0.001844"/>
</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-07-28T01:56:37.390280" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.388581" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.388565" elapsed="0.001799"/>
</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-07-28T01:56:37.377898" elapsed="0.012516"/>
</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-07-28T01:56:37.392659" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.390885" elapsed="0.002014"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.390867" elapsed="0.002057"/>
</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-07-28T01:56:37.394702" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.392981" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.392964" 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-07-28T01:56:37.390644" elapsed="0.004186"/>
</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-07-28T01:56:37.397379" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:37.410696" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:37.410879" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:37.397195" elapsed="0.013723"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.395367" elapsed="0.015606"/>
</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-07-28T01:56:37.411234" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.411008" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.395349" elapsed="0.015995"/>
</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-07-28T01:56:37.413958" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.411423" elapsed="0.002617"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:37.414815" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:37.414264" elapsed="0.000593"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.414074" elapsed="0.000834"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.411401" elapsed="0.003536"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:37.414990" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:56:37.415305" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:37.395107" elapsed="0.020239"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:37.416010" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16787  bytes 219379190 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9075  bytes 1578948 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 1  bytes 108 (108.0 B)
        RX errors 0  dropped 1  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-07-28T01:56:37.415580" elapsed="0.000528"/>
</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-07-28T01:56:37.419686" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:37.513147" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:37.513588" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:37.419396" elapsed="0.094258"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.416899" elapsed="0.096862"/>
</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-07-28T01:56:37.514257" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.513828" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.416874" elapsed="0.097561"/>
</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-07-28T01:56:37.518702" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.514613" elapsed="0.004224"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:37.520118" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:37.519197" elapsed="0.000983"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:37.518890" elapsed="0.001372"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:37.514574" elapsed="0.005735"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:37.520392" elapsed="0.000104"/>
</return>
<msg time="2026-07-28T01:56:37.520791" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:37.416507" elapsed="0.104344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:37.521865" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.521189" elapsed="0.000805"/>
</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-07-28T01:56:37.524143" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.523201" elapsed="0.001019">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:37.522720" elapsed="0.001576">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:37.522689" elapsed="0.001640">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.524562" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:37.524399" elapsed="0.000222"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:37.524382" elapsed="0.000262"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:37.522617" elapsed="0.002071">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.522117" elapsed="0.002723">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:37.373263" elapsed="0.151687">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.543060" elapsed="0.001725"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.541163" elapsed="0.003675"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.541138" elapsed="0.003727"/>
</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-07-28T01:56:38.546780" elapsed="0.002047"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.544923" elapsed="0.003948"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.544907" elapsed="0.003990"/>
</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-07-28T01:56:38.550740" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.548954" elapsed="0.001845"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.548937" elapsed="0.001885"/>
</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-07-28T01:56:38.552626" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.550877" elapsed="0.001811"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.550862" elapsed="0.001850"/>
</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-07-28T01:56:38.540906" elapsed="0.011860"/>
</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-07-28T01:56:38.555029" elapsed="0.000255"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.553233" elapsed="0.002096"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.553215" elapsed="0.002146"/>
</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-07-28T01:56:38.557600" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.555432" elapsed="0.002225"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.555411" elapsed="0.002269"/>
</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-07-28T01:56:38.552987" elapsed="0.004742"/>
</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-07-28T01:56:38.560238" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:38.573217" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:38.573399" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:38.560056" elapsed="0.013382"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.558310" elapsed="0.015221"/>
</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-07-28T01:56:38.573796" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.573569" elapsed="0.000311"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.558291" elapsed="0.015627"/>
</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-07-28T01:56:38.578800" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.574021" elapsed="0.004918"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:38.580235" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:38.579306" elapsed="0.000999"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.578994" elapsed="0.001396"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.573987" elapsed="0.006452"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:38.580561" elapsed="0.000079"/>
</return>
<msg time="2026-07-28T01:56:38.580928" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:38.558040" elapsed="0.022950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:38.582156" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16800  bytes 219380568 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9090  bytes 1582266 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 1  bytes 108 (108.0 B)
        RX errors 0  dropped 1  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-07-28T01:56:38.581327" elapsed="0.001169"/>
</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-07-28T01:56:38.585159" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:38.683547" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:38.684037" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:38.584982" elapsed="0.099126"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.583099" elapsed="0.101121"/>
</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-07-28T01:56:38.684997" elapsed="0.000125"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.684359" elapsed="0.000856"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.583080" elapsed="0.102190"/>
</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-07-28T01:56:38.690670" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.685523" elapsed="0.005236"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:38.691759" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:38.691040" elapsed="0.000760"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:38.690794" elapsed="0.001111"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:38.685446" elapsed="0.006492"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:38.691992" elapsed="0.000052"/>
</return>
<msg time="2026-07-28T01:56:38.692282" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:38.582780" elapsed="0.109541"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:38.693105" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.692595" elapsed="0.000596"/>
</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-07-28T01:56:38.694857" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.694116" elapsed="0.000898">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:38.693759" elapsed="0.001363">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:38.693739" elapsed="0.001429">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.695535" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:38.695265" elapsed="0.000354"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:38.695241" elapsed="0.000411"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:38.693692" elapsed="0.002022">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.693316" elapsed="0.002526">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:38.537203" elapsed="0.158792">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:39.717813" elapsed="0.001715"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.716014" elapsed="0.003566"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.715987" elapsed="0.003620"/>
</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-07-28T01:56:39.721387" elapsed="0.001933"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.719666" elapsed="0.003696"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.719649" 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-07-28T01:56:39.725201" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.723443" elapsed="0.001816"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.723427" elapsed="0.001856"/>
</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-07-28T01:56:39.727056" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.725337" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.725322" elapsed="0.001818"/>
</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-07-28T01:56:39.715733" elapsed="0.011458"/>
</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-07-28T01:56:39.729381" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.727669" elapsed="0.001946"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.727651" elapsed="0.001988"/>
</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-07-28T01:56:39.731398" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.729694" elapsed="0.001769"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.729678" elapsed="0.001811"/>
</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-07-28T01:56:39.727414" elapsed="0.004122"/>
</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-07-28T01:56:39.734166" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:39.746826" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:39.746963" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.733986" elapsed="0.013013"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.732072" elapsed="0.015025"/>
</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-07-28T01:56:39.747571" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.747162" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.732054" elapsed="0.015738"/>
</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-07-28T01:56:39.751892" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.747922" elapsed="0.004104"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.753241" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.752390" elapsed="0.000917"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.752080" elapsed="0.001311"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.747886" elapsed="0.005554"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:39.753555" elapsed="0.000075"/>
</return>
<msg time="2026-07-28T01:56:39.753912" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.731804" elapsed="0.022171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.754994" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16817  bytes 219382372 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9109  bytes 1585960 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.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-07-28T01:56:39.754310" elapsed="0.000937"/>
</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-07-28T01:56:39.758225" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:39.848910" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:39.849211" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:39.758056" elapsed="0.091214"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.756323" elapsed="0.093036"/>
</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-07-28T01:56:39.849808" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.849417" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.756305" elapsed="0.093680"/>
</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-07-28T01:56:39.854103" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.850115" elapsed="0.004122"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.855519" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:39.854636" elapsed="0.000948"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.854291" elapsed="0.001376"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.850079" elapsed="0.005637"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:39.855796" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:56:39.856142" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:39.755927" elapsed="0.100243"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.856628" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:39.856322" elapsed="0.000364"/>
</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-07-28T01:56:39.857215" elapsed="0.000401"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.856999" elapsed="0.000657"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.856985" elapsed="0.000696"/>
</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-07-28T01:56:39.857952" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.857736" elapsed="0.000273"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.857720" elapsed="0.000312"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-07-28T01:56:39.856953" elapsed="0.001102"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:39.856744" elapsed="0.001341"/>
</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-07-28T01:56:39.710928" elapsed="0.147213"/>
</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-07-28T01:56:33.915101" elapsed="5.943098"/>
</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-07-28T01:56:39.860418" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.858689" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.858671" 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-07-28T01:56:39.862441" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.860718" elapsed="0.001793"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.860702" elapsed="0.001833"/>
</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-07-28T01:56:39.858428" elapsed="0.004155"/>
</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-07-28T01:56:33.591098" elapsed="6.271541"/>
</kw>
<kw name="Enable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.863472" 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-07-28T01:56:39.863163" elapsed="0.000367"/>
</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-07-28T01:56:39.869893" elapsed="0.001688"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.867958" elapsed="0.003663"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.867940" elapsed="0.003705"/>
</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-07-28T01:56:39.873410" elapsed="0.001972"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.871702" elapsed="0.003723"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.871685" elapsed="0.003782"/>
</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-07-28T01:56:39.877231" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.875527" elapsed="0.001762"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.875510" elapsed="0.001803"/>
</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-07-28T01:56:39.879080" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.877369" elapsed="0.001771"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.877353" elapsed="0.001835"/>
</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-07-28T01:56:39.867725" elapsed="0.011512"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.879867" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:39.879573" elapsed="0.000352"/>
</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-07-28T01:56:39.882079" elapsed="0.000166"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.880368" elapsed="0.001912"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.880351" elapsed="0.001953"/>
</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-07-28T01:56:39.884085" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.882359" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.882342" 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-07-28T01:56:39.880135" elapsed="0.004074"/>
</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-07-28T01:56:39.886651" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.50'.</msg>
<msg time="2026-07-28T01:56:39.912075" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:39.912340" 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-07-28T01:56:39.886482" elapsed="0.025913"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.884749" elapsed="0.027780"/>
</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-07-28T01:56:39.912938" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.912605" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.884732" elapsed="0.028383"/>
</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-07-28T01:56:39.917264" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.913240" elapsed="0.004157"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.918631" 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-07-28T01:56:39.917791" elapsed="0.000899"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.917449" elapsed="0.001323"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.913205" elapsed="0.005616"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:39.918898" elapsed="0.000084"/>
</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-07-28T01:56:39.884472" elapsed="0.034735"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</var>
<status status="PASS" start="2026-07-28T01:56:39.879428" elapsed="0.039861"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:56:39.879286" elapsed="0.040069"/>
</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-07-28T01:56:39.865838" elapsed="0.053662"/>
</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-07-28T01:56:39.924371" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.920538" elapsed="0.004072"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.920486" elapsed="0.004149"/>
</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-07-28T01:56:39.926396" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.924690" elapsed="0.001758"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.924674" elapsed="0.001813"/>
</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-07-28T01:56:39.919977" elapsed="0.006560"/>
</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-07-28T01:56:39.938211" elapsed="0.001665"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.936336" elapsed="0.003580"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.936318" elapsed="0.003623"/>
</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-07-28T01:56:39.941713" elapsed="0.001916"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.940003" elapsed="0.003668"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.939984" elapsed="0.003712"/>
</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-07-28T01:56:39.945465" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.943753" elapsed="0.001770"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.943736" elapsed="0.001811"/>
</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-07-28T01:56:39.947320" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.945601" elapsed="0.001779"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.945586" 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-07-28T01:56:39.936103" elapsed="0.011368"/>
</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-07-28T01:56:39.949655" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.947946" elapsed="0.001960"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.947920" elapsed="0.002011"/>
</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-07-28T01:56:39.951735" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.949986" elapsed="0.001802"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.949970" elapsed="0.001841"/>
</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-07-28T01:56:39.947701" elapsed="0.004157"/>
</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-07-28T01:56:39.954266" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:39.966937" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:39.967233" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.954096" elapsed="0.013199"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.952369" elapsed="0.015013"/>
</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-07-28T01:56:39.967852" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.967439" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.952352" elapsed="0.015682"/>
</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-07-28T01:56:39.972090" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:39.968159" elapsed="0.004063"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.973408" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.972614" elapsed="0.000890"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.972276" elapsed="0.001313"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.968124" elapsed="0.005516"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:39.973721" elapsed="0.000071"/>
</return>
<msg time="2026-07-28T01:56:39.974074" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:39.952119" elapsed="0.022016"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:39.975079" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16833  bytes 219384228 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9128  bytes 1589918 (1.5 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.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-07-28T01:56:39.974496" elapsed="0.000700"/>
</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-07-28T01:56:39.977665" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:40.038065" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:40.038346" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:39.977496" elapsed="0.060911"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:39.975761" elapsed="0.062832"/>
</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-07-28T01:56:40.038999" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:40.038661" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:39.975743" elapsed="0.063433"/>
</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-07-28T01:56:40.043278" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:40.039306" elapsed="0.004108"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:40.044773" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:40.043815" elapsed="0.001025"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:40.043502" elapsed="0.001426"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:40.039269" elapsed="0.005710"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:40.045057" elapsed="0.000067"/>
</return>
<msg time="2026-07-28T01:56:40.045411" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:39.975477" elapsed="0.070041"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:40.046649" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:40.045873" elapsed="0.000915"/>
</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-07-28T01:56:40.047896" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:40.047423" elapsed="0.000552">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:40.047199" elapsed="0.000852">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:40.047184" elapsed="0.000900">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:40.048300" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:40.048154" elapsed="0.000204"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:40.048137" elapsed="0.000245"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:40.047150" elapsed="0.001277">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:40.046910" elapsed="0.001598">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:39.932859" elapsed="0.115755">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.067438" elapsed="0.001714"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.065616" elapsed="0.003588"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.065591" elapsed="0.003641"/>
</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-07-28T01:56:41.071118" elapsed="0.001950"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.069290" elapsed="0.003820"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.069273" elapsed="0.003863"/>
</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-07-28T01:56:41.074941" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.073191" elapsed="0.001808"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.073175" elapsed="0.001848"/>
</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-07-28T01:56:41.076867" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.075078" elapsed="0.001866"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.075063" elapsed="0.001907"/>
</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-07-28T01:56:41.065343" elapsed="0.011685"/>
</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-07-28T01:56:41.079275" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.077523" elapsed="0.001993"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.077504" elapsed="0.002036"/>
</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-07-28T01:56:41.081309" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.079595" elapsed="0.001767"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.079579" elapsed="0.001807"/>
</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-07-28T01:56:41.077252" elapsed="0.004182"/>
</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-07-28T01:56:41.083903" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:41.096734" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:41.096936" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:41.083722" elapsed="0.013256"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.081977" elapsed="0.015062"/>
</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-07-28T01:56:41.097335" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.097080" elapsed="0.000340"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.081960" elapsed="0.015518"/>
</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-07-28T01:56:41.100226" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.097570" elapsed="0.002744"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:41.101168" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:41.100581" elapsed="0.000628"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.100349" elapsed="0.000911"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.097545" elapsed="0.003747"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:41.101346" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:56:41.101600" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:41.081722" elapsed="0.019918"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:41.102302" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16856  bytes 219386474 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9151  bytes 1600180 (1.6 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 302  bytes 27836 (27.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 302  bytes 27836 (27.8 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.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-07-28T01:56:41.101859" elapsed="0.000542"/>
</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-07-28T01:56:41.105896" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:41.186429" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:41.186954" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:41.105660" elapsed="0.081357"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.103204" elapsed="0.083914"/>
</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-07-28T01:56:41.187620" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.187186" elapsed="0.000565"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.103179" elapsed="0.084621"/>
</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-07-28T01:56:41.191994" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.187931" elapsed="0.004195"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:41.193355" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:41.192515" elapsed="0.000903"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:41.192180" elapsed="0.001346"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:41.187895" elapsed="0.005681"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:41.193656" elapsed="0.000072"/>
</return>
<msg time="2026-07-28T01:56:41.194040" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:41.102804" elapsed="0.091265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:41.194534" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.194227" elapsed="0.000368"/>
</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-07-28T01:56:41.195591" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.195143" elapsed="0.000525">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:41.194922" elapsed="0.037954">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:41.194907" elapsed="0.038064">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.233281" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:41.233081" elapsed="0.000267"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:41.233057" elapsed="0.000316"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:41.194875" elapsed="0.038548">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.194652" elapsed="0.038886">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:41.061945" elapsed="0.171737">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.250967" elapsed="0.001819"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.249095" elapsed="0.003743"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.249071" elapsed="0.003795"/>
</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-07-28T01:56:42.254726" elapsed="0.002018"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.252925" elapsed="0.003863"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.252908" elapsed="0.003905"/>
</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-07-28T01:56:42.258797" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.256870" elapsed="0.001993"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.256853" elapsed="0.002047"/>
</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-07-28T01:56:42.260750" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.258961" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.258944" elapsed="0.001910"/>
</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-07-28T01:56:42.248834" elapsed="0.012074"/>
</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-07-28T01:56:42.263259" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.261490" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.261470" elapsed="0.002063"/>
</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-07-28T01:56:42.265353" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.263589" elapsed="0.001820"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.263573" elapsed="0.001860"/>
</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-07-28T01:56:42.261200" elapsed="0.004299"/>
</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-07-28T01:56:42.268211" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:42.281296" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:42.281624" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:42.268028" elapsed="0.013672"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.266092" elapsed="0.015698"/>
</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-07-28T01:56:42.282239" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.281847" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.266073" elapsed="0.016368"/>
</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-07-28T01:56:42.286912" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.282607" elapsed="0.004438"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:42.287934" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:42.287329" elapsed="0.000647"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.287080" elapsed="0.000950"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.282570" elapsed="0.005494"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:42.288119" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:56:42.288341" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:42.265779" elapsed="0.022601"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:42.289071" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16872  bytes 219388124 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9169  bytes 1603770 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.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-07-28T01:56:42.288663" elapsed="0.000504"/>
</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-07-28T01:56:42.292891" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:42.384850" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:42.385121" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:42.292594" elapsed="0.092586"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.290076" elapsed="0.095263"/>
</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-07-28T01:56:42.385971" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.385510" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.290051" elapsed="0.096168"/>
</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-07-28T01:56:42.391075" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.386351" elapsed="0.004864"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:42.392699" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:42.391678" elapsed="0.001087"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:42.391328" elapsed="0.001582"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:42.386314" elapsed="0.006651"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:42.393045" elapsed="0.000126"/>
</return>
<msg time="2026-07-28T01:56:42.393492" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:42.289604" elapsed="0.104063"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:42.394431" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.394054" elapsed="0.000457"/>
</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-07-28T01:56:42.395538" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.395072" elapsed="0.000547">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:42.394838" elapsed="0.000866">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:42.394823" elapsed="0.000918">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.395959" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:42.395812" elapsed="0.000205"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:42.395795" elapsed="0.000246"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:42.394790" elapsed="0.001304">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.394579" elapsed="0.001581">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:42.245300" elapsed="0.150965">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.417251" elapsed="0.002364"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.414349" elapsed="0.005317"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.414295" elapsed="0.005398"/>
</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-07-28T01:56:43.421617" elapsed="0.002739"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.419750" elapsed="0.004650"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.419734" elapsed="0.004691"/>
</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-07-28T01:56:43.426286" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.424500" elapsed="0.001871"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.424481" elapsed="0.001917"/>
</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-07-28T01:56:43.428247" elapsed="0.000088"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.426480" elapsed="0.001897"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.426443" elapsed="0.001960"/>
</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-07-28T01:56:43.413948" elapsed="0.014533"/>
</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-07-28T01:56:43.430790" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.428978" elapsed="0.002044"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.428960" elapsed="0.002093"/>
</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-07-28T01:56:43.432897" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.431114" elapsed="0.001838"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.431097" elapsed="0.001879"/>
</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-07-28T01:56:43.428722" elapsed="0.004304"/>
</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-07-28T01:56:43.435606" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:43.448224" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:43.448412" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:43.435398" elapsed="0.013075"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.433596" elapsed="0.014936"/>
</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-07-28T01:56:43.448808" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.448567" elapsed="0.000326"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.433573" elapsed="0.015351"/>
</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-07-28T01:56:43.451546" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.449003" elapsed="0.002641"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:43.452426" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:43.451873" elapsed="0.000615"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.451678" elapsed="0.000865"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.448981" elapsed="0.003594"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:43.452630" elapsed="0.000053"/>
</return>
<msg time="2026-07-28T01:56:43.452874" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:43.433305" elapsed="0.019609"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:43.453574" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16898  bytes 219390516 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9192  bytes 1614024 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 2  bytes 216 (216.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-07-28T01:56:43.453126" elapsed="0.000545"/>
</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-07-28T01:56:43.457264" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:43.538182" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:43.538525" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:43.457023" elapsed="0.081565"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.454533" elapsed="0.084142"/>
</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-07-28T01:56:43.539091" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.538732" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.454506" elapsed="0.084783"/>
</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-07-28T01:56:43.543718" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.539414" elapsed="0.004447"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:43.545140" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:43.544255" elapsed="0.000962"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:43.543916" elapsed="0.001393"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:43.539380" elapsed="0.005979"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:43.545437" elapsed="0.000117"/>
</return>
<msg time="2026-07-28T01:56:43.545852" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:43.454053" elapsed="0.091859"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:43.547026" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.546293" elapsed="0.000869"/>
</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-07-28T01:56:43.549503" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.548428" elapsed="0.001244">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:43.547918" elapsed="0.001919">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:43.547885" elapsed="0.002035">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.550546" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:43.550164" elapsed="0.000539"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:43.550124" elapsed="0.000634"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:43.547811" elapsed="0.003051">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.547284" elapsed="0.003716">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:43.409131" elapsed="0.142117">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:44.569840" elapsed="0.001794"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.568032" elapsed="0.003656"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.568006" elapsed="0.003710"/>
</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-07-28T01:56:44.573586" elapsed="0.002001"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.571783" elapsed="0.003847"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.571761" elapsed="0.003894"/>
</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-07-28T01:56:44.577508" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.575710" elapsed="0.001863"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.575694" elapsed="0.001905"/>
</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-07-28T01:56:44.579445" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.577666" elapsed="0.001857"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.577650" 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-07-28T01:56:44.567768" elapsed="0.011829"/>
</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-07-28T01:56:44.581935" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.580153" elapsed="0.002001"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.580135" elapsed="0.002046"/>
</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-07-28T01:56:44.584164" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.582246" elapsed="0.001971"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.582229" elapsed="0.002012"/>
</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-07-28T01:56:44.579900" elapsed="0.004389"/>
</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-07-28T01:56:44.587002" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:44.599903" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.600106" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.586822" elapsed="0.013333"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.584899" elapsed="0.015323"/>
</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-07-28T01:56:44.600534" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.600266" elapsed="0.000352"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.584882" elapsed="0.015767"/>
</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-07-28T01:56:44.603310" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.600744" elapsed="0.002658"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.604214" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.603656" elapsed="0.000599"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.603436" elapsed="0.000871"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.600720" elapsed="0.003618"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.604389" elapsed="0.000056"/>
</return>
<msg time="2026-07-28T01:56:44.604656" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.584605" elapsed="0.020092"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.605346" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16916  bytes 219392394 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9211  bytes 1617614 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 324 (324.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-07-28T01:56:44.604924" elapsed="0.000523"/>
</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-07-28T01:56:44.609060" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:44.691034" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.691597" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:44.608812" elapsed="0.082855"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.606274" elapsed="0.085509"/>
</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-07-28T01:56:44.692498" elapsed="0.000100"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.691883" elapsed="0.000818"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.606248" elapsed="0.086518"/>
</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-07-28T01:56:44.697028" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.692949" elapsed="0.004172"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.698068" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:44.697366" elapsed="0.000849"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.697155" elapsed="0.001116"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.692902" elapsed="0.005400"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.698357" elapsed="0.000058"/>
</return>
<msg time="2026-07-28T01:56:44.698645" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:44.605865" elapsed="0.092817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.699391" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:44.698953" elapsed="0.000547"/>
</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-07-28T01:56:44.700344" elapsed="0.000671"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.699998" elapsed="0.001096"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.699964" elapsed="0.001166"/>
</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-07-28T01:56:44.701560" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.701210" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.701187" elapsed="0.000504"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-07-28T01:56:44.699916" elapsed="0.001810"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:44.699586" elapsed="0.002183"/>
</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-07-28T01:56:44.564228" elapsed="0.137622"/>
</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-07-28T01:56:39.926705" elapsed="4.775248"/>
</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-07-28T01:56:39.862811" elapsed="4.839243"/>
</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-07-28T01:56:44.707110" elapsed="0.001805"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.703472" elapsed="0.005487"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.703428" elapsed="0.005557"/>
</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-07-28T01:56:44.710914" elapsed="0.002012"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.709043" elapsed="0.003937"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.709026" elapsed="0.003980"/>
</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-07-28T01:56:44.714852" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.713061" elapsed="0.001849"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.713045" elapsed="0.001889"/>
</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-07-28T01:56:44.716769" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.714989" elapsed="0.001856"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.714974" elapsed="0.001911"/>
</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-07-28T01:56:44.703107" elapsed="0.013832"/>
</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-07-28T01:56:44.719853" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.717612" elapsed="0.002482"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.717587" elapsed="0.002533"/>
</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-07-28T01:56:44.721957" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.720174" elapsed="0.001836"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.720158" elapsed="0.001875"/>
</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-07-28T01:56:44.717219" elapsed="0.004863"/>
</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-07-28T01:56:44.726052" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:56:44.746750" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.747057" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:44.725875" elapsed="0.021342"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.724051" elapsed="0.023264"/>
</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-07-28T01:56:44.747803" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.747373" elapsed="0.000564"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.724033" elapsed="0.023953"/>
</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-07-28T01:56:44.752248" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.748133" elapsed="0.004250"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.753688" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:44.752803" elapsed="0.000944"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.752442" elapsed="0.001387"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.748081" elapsed="0.005814"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.753988" elapsed="0.000079"/>
</return>
<msg time="2026-07-28T01:56:44.754438" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:44.722367" elapsed="0.032162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.757626" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:44.754941" elapsed="0.002767"/>
</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-07-28T01:56:44.757937" elapsed="0.000600"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:56:44.758613" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:56:44.761247" level="INFO">${datapath_id_from_switch} = 33455282416460</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-07-28T01:56:44.702361" elapsed="0.058924"/>
</kw>
<kw name="Verify Switch In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:44.775516" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:56:44.776697" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01etk5kswkokmu1eiwwg6f2tnam10.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:56:44 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:33455282416460","flow-node-inventory:port-number":56968,"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-66","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":"5","byte-count":"410","duration":{"second":9,"nanosecond":40000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"5"}},{"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"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:56:44.777580" 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-07-28T01:56:44.762009" elapsed="0.015641"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.784095" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:33455282416460","flow-node-inventory:port-number":56968,"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-66","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":"5","byte-count":"410","duration":{"second":9,"nanosecond":40000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"5"}},{"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-07-28T01:56:43.029Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:33455282416460:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1e:6d:6a:39:6b:4c","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":9,"nanosecond":348000000},"bytes":{"transmitted":"586","received":"216"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:56:43.045Z"}},{"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-07-28T01:56:44.778040" elapsed="0.007010"/>
</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-07-28T01:56:44.785570" elapsed="0.009766"/>
</kw>
<arg>${test_switch}</arg>
<doc>Verifies the existence of the switch.datapath_id in the operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:56:44.761566" elapsed="0.033850"/>
</kw>
<kw name="Disable OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.796282" 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-07-28T01:56:44.796018" elapsed="0.000322"/>
</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-07-28T01:56:44.802630" elapsed="0.001659"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.800844" elapsed="0.003484"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.800816" elapsed="0.003544"/>
</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-07-28T01:56:44.806136" elapsed="0.002063"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.804419" elapsed="0.003823"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.804403" elapsed="0.003864"/>
</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-07-28T01:56:44.810036" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.808322" elapsed="0.001774"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.808306" elapsed="0.001816"/>
</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-07-28T01:56:44.811912" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.810176" elapsed="0.001794"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.810160" elapsed="0.001834"/>
</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-07-28T01:56:44.800585" elapsed="0.011457"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.812694" 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-07-28T01:56:44.812384" elapsed="0.000368"/>
</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-07-28T01:56:44.814953" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.813200" elapsed="0.001972"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.813183" elapsed="0.002014"/>
</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-07-28T01:56:44.817162" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.815250" elapsed="0.001965"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.815234" elapsed="0.002004"/>
</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-07-28T01:56:44.812966" elapsed="0.004319"/>
</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-07-28T01:56:44.819764" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:1.1.1.1'.</msg>
<msg time="2026-07-28T01:56:44.852821" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.852954" 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-07-28T01:56:44.819592" elapsed="0.033386"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.817840" elapsed="0.035176"/>
</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-07-28T01:56:44.853213" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.853042" elapsed="0.000227"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.817822" elapsed="0.035469"/>
</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-07-28T01:56:44.855160" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.853346" elapsed="0.001875"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.855773" 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-07-28T01:56:44.855384" elapsed="0.000415"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.855246" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.853330" elapsed="0.002527"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.855897" elapsed="0.000042"/>
</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-07-28T01:56:44.817564" elapsed="0.038476"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:1.1.1.1</var>
<status status="PASS" start="2026-07-28T01:56:44.812256" elapsed="0.043830"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:56:44.812099" elapsed="0.044022"/>
</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-07-28T01:56:44.798712" elapsed="0.057465"/>
</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-07-28T01:56:44.858502" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.856700" elapsed="0.002019"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.856682" elapsed="0.002061"/>
</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-07-28T01:56:44.860542" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.858799" elapsed="0.001796"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.858783" elapsed="0.001836"/>
</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-07-28T01:56:44.856394" elapsed="0.004283"/>
</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-07-28T01:56:44.872409" elapsed="0.001685"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.870667" elapsed="0.003465"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.870648" elapsed="0.003509"/>
</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-07-28T01:56:44.876006" elapsed="0.001963"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.874222" elapsed="0.003789"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.874205" elapsed="0.003831"/>
</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-07-28T01:56:44.879859" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.878091" elapsed="0.001837"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.878074" elapsed="0.001877"/>
</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-07-28T01:56:44.881749" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.880005" elapsed="0.001803"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.879990" 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-07-28T01:56:44.870399" elapsed="0.011480"/>
</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-07-28T01:56:44.884256" elapsed="0.000176"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.882336" elapsed="0.002144"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.882319" elapsed="0.002186"/>
</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-07-28T01:56:44.886311" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.884561" elapsed="0.001817"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.884544" elapsed="0.001858"/>
</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-07-28T01:56:44.882086" elapsed="0.004378"/>
</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-07-28T01:56:44.888962" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:44.902757" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.902942" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.888792" elapsed="0.014190"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.886984" elapsed="0.016051"/>
</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-07-28T01:56:44.903403" elapsed="0.000090"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.903070" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.886966" elapsed="0.016661"/>
</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-07-28T01:56:44.908036" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.903755" elapsed="0.004417"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.909333" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.908561" elapsed="0.000838"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.908226" elapsed="0.001284"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.903719" elapsed="0.005841"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.909638" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:56:44.909977" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:44.886732" elapsed="0.023306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.911176" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 16938  bytes 219394966 (219.3 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9240  bytes 1622672 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 324 (324.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-07-28T01:56:44.910529" elapsed="0.000799"/>
</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-07-28T01:56:44.916006" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:44.968560" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:44.968858" 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-07-28T01:56:44.915840" elapsed="0.053077"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.912590" elapsed="0.056412"/>
</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-07-28T01:56:44.969391" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.969058" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.912550" elapsed="0.057068"/>
</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-07-28T01:56:44.973823" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.969748" elapsed="0.004209"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.975171" 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-07-28T01:56:44.974383" elapsed="0.000826"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:44.974010" elapsed="0.001251"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:44.969711" elapsed="0.005580"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:44.975338" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:56:44.975586" 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-07-28T01:56:44.911947" elapsed="0.063676"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.976242" 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-07-28T01:56:44.975835" elapsed="0.000500"/>
</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-07-28T01:56:44.977001" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.976785" elapsed="0.000298"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:44.976765" 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="NOT RUN" start="2026-07-28T01:56:44.977382" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:44.977191" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:44.977170" elapsed="0.000357"/>
</if>
<var name="${str}"/>
<status status="NOT RUN" start="2026-07-28T01:56:44.976722" elapsed="0.000836"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="NOT RUN" start="2026-07-28T01:56:44.976411" elapsed="0.001184"/>
</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-07-28T01:56:44.867131" elapsed="0.110539"/>
</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-07-28T01:56:44.860842" elapsed="0.116903"/>
</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-07-28T01:56:44.795658" elapsed="0.182191"/>
</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-07-28T01:56:44.988174" level="INFO">GET Request : url=http://10.30.170.50: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=node01etk5kswkokmu1eiwwg6f2tnam10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:44.988658" level="INFO">GET Response : url=http://10.30.170.50: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:33455282416460","flow-node-inventory:port-number":56968,"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-66","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":"5","byte-count":"410","duration":{"second":9,"nanosecond":40000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"5"}},{"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"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:56:44.988930" 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-07-28T01:56:44.979233" elapsed="0.009725"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.991687" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:33455282416460","flow-node-inventory:port-number":56968,"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-66","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":"5","byte-count":"410","duration":{"second":9,"nanosecond":40000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"5"}},{"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-07-28T01:56:43.029Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:33455282416460:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1e:6d:6a:39:6b:4c","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":9,"nanosecond":348000000},"bytes":{"transmitted":"586","received":"216"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:56:43.045Z"}},{"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-07-28T01:56:44.989115" elapsed="0.002957"/>
</kw>
<kw name="Should Not Match Regexp" owner="BuiltIn">
<msg time="2026-07-28T01:56:44.997168" level="FAIL">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:33455282416460","flow-node-inventory:port-number":56968,"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-66","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":"5","byte-count":"410","duration":{"second":9,"nanosecond":40000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"7","active-flows":1,"packets-matched":"5"}},{"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-07-28T01:56:43.029Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:33455282416460:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1e:6d:6a:39:6b:4c","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":9,"nanosecond":348000000},"bytes":{"transmitted":"586","received":"216"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:56:43.045Z"}},{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}}' matches 'openflow:33455282416460'</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-07-28T01:56:44.992225" elapsed="0.005567">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:33455282416460","flow-node-inventory:port-number":56968,"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":{"p...
    [ Message content over the limit has been removed. ]
...de-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-07-28T01:56:43.029Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:33455282416460:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1e:6d:6a:39:6b:4c","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":9,"nanosecond":348000000},"bytes":{"transmitted":"586","received":"216"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:56:43.045Z"}},{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}}' matches 'openflow:33455282416460'</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-07-28T01:56:44.978793" elapsed="0.019231">'{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:33455282416460","flow-node-inventory:port-number":56968,"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":{"p...
    [ Message content over the limit has been removed. ]
...de-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-07-28T01:56:43.029Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:33455282416460:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1e:6d:6a:39:6b:4c","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":9,"nanosecond":348000000},"bytes":{"transmitted":"586","received":"216"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:56:43.045Z"}},{"id":"openflow:1","flow-node-inventory:table":[{"id":2},{"id":0}]}]}}' matches 'openflow:33455282416460'</status>
</kw>
<kw name="Verify Switch Not In Operational Data Store" owner="SwitchUtils">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:46.007043" level="INFO">GET Request : url=http://10.30.170.50: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=node01etk5kswkokmu1eiwwg6f2tnam10.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:46.007361" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:56:46.007751" 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-07-28T01:56:45.999811" elapsed="0.008004"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.011167" 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-07-28T01:56:46.008192" elapsed="0.003127"/>
</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-07-28T01:56:46.011562" elapsed="0.005384"/>
</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-07-28T01:56:45.998913" elapsed="0.018128"/>
</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-07-28T01:56:44.978070" elapsed="1.039040"/>
</kw>
<tag>switch_qualification</tag>
<timeout value="5 minutes"/>
<status status="PASS" start="2026-07-28T01:56:33.590414" elapsed="12.426872"/>
</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-07-28T01:56:46.025760" elapsed="0.001663"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.023972" elapsed="0.003504"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.023948" elapsed="0.003557"/>
</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-07-28T01:56:46.029297" elapsed="0.001902"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.027564" elapsed="0.003678"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.027547" elapsed="0.003721"/>
</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-07-28T01:56:46.033108" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.031325" elapsed="0.001842"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.031308" elapsed="0.001883"/>
</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-07-28T01:56:46.034946" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.033245" elapsed="0.001759"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.033230" 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-07-28T01:56:46.023773" elapsed="0.011304"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.035750" 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-07-28T01:56:46.035427" elapsed="0.000370"/>
</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-07-28T01:56:46.038101" elapsed="0.000130"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.036207" elapsed="0.002057"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.036189" elapsed="0.002100"/>
</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-07-28T01:56:46.040065" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.038342" elapsed="0.001777"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.038326" elapsed="0.001817"/>
</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-07-28T01:56:46.036016" elapsed="0.004174"/>
</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-07-28T01:56:46.042554" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-07-28T01:56:46.116204" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:56:46.116563" 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-07-28T01:56:46.042407" elapsed="0.074219"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.040691" elapsed="0.076040"/>
</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-07-28T01:56:46.117221" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.116802" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.040673" elapsed="0.076730"/>
</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-07-28T01:56:46.121710" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.117577" elapsed="0.004266"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.122963" 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-07-28T01:56:46.122202" elapsed="0.000818"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.121897" elapsed="0.001205"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.117538" elapsed="0.005615"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:46.123234" elapsed="0.000075"/>
</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-07-28T01:56:46.040463" elapsed="0.083111"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-07-28T01:56:46.035291" elapsed="0.088368"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:56:46.035131" elapsed="0.088602"/>
</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-07-28T01:56:46.021719" elapsed="0.102254"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-07-28T01:56:46.018290" elapsed="0.105803"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-07-28T01:56:46.124380" elapsed="0.000497"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-07-28T01:56:46.125164" elapsed="0.000255"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.017987" elapsed="0.107584"/>
</kw>
<doc>TODO</doc>
<status status="PASS" start="2026-07-28T01:56:30.796664" elapsed="15.328969"/>
</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-07-28T01:56:46.337913" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7868a3452190&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-07-28T01:56:46.337708" elapsed="0.000239"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.338539" level="INFO">${test_switch} = &lt;Ovs.Ovs object at 0x7868a3452190&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-07-28T01:56:46.338173" elapsed="0.000422"/>
</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-07-28T01:56:46.338803" elapsed="0.000347"/>
</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-07-28T01:56:46.339355" elapsed="0.000319"/>
</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-07-28T01:56:46.339874" elapsed="0.000297"/>
</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-07-28T01:56:46.342217" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:46.341909" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.341884" elapsed="0.000417"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:56:46.342639" 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-07-28T01:56:46.342743" 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-07-28T01:56:46.342469" elapsed="0.000300"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.343346" level="INFO">Attempting to execute command "ps -elf | grep java" on remote system "10.30.170.50" 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-07-28T01:56:46.342928" elapsed="0.000466"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:56:46.344041" 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-07-28T01:56:46.343573" elapsed="0.000503"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.344966" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:56:46.345044" 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-07-28T01:56:46.344680" 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-07-28T01:56:46.345232" elapsed="0.000339"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:56:46.346425" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:56:46.962560" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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-793-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-07-28T01:56:46.346110" elapsed="0.616598"/>
</kw>
<msg time="2026-07-28T01:56:46.962788" 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-07-28T01:56:46.345746" elapsed="0.617118"/>
</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-07-28T01:56:46.344308" elapsed="0.618666"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:56:46.963539" level="INFO">Executing command 'ps -elf | grep java'.</msg>
<msg time="2026-07-28T01:56:46.985991" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:46.986151" level="INFO">${stdout} = 0 S jenkins     2035    1979 43  80   0 - 2290300 futex_ 01:52 ?      00:01:51 /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-07-28T01:56:46.986216" 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-07-28T01:56:46.963287" elapsed="0.022961"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:56:46.986511" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:46.987533" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:46.987116" elapsed="0.000479"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:56:46.987903" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:56:46.987708" elapsed="0.000264"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.987676" elapsed="0.000328"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:56:46.988232" elapsed="0.000039"/>
</return>
<status status="PASS" start="2026-07-28T01:56:46.988079" elapsed="0.000239"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:46.988058" elapsed="0.000294"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:56:46.988401" 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-07-28T01:56:46.992057" elapsed="0.000470"/>
</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-07-28T01:56:46.992769" elapsed="0.000219"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:56:46.993203" elapsed="0.000140"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:56:46.988874" elapsed="0.004542"/>
</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-07-28T01:56:46.341403" elapsed="0.652162"/>
</kw>
<msg time="2026-07-28T01:56:46.993705" 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-07-28T01:56:46.340829" elapsed="0.652948"/>
</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-07-28T01:56:46.340353" elapsed="0.653669"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:47.009658" level="INFO">MAKE: OpenVswitch
MODEL: OVS
IP: 10.30.171.224
PROMPT: &gt;
CONTROLLER_IP: 10.30.170.50
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-07-28T01:56:46.994290" elapsed="0.015419"/>
</kw>
<kw name="Ping" owner="SwitchUtils">
<kw name="Run" owner="OperatingSystem">
<msg time="2026-07-28T01:56:47.012972" level="INFO">Running command 'ping 10.30.171.224 -c 1 -W 1 2&gt;&amp;1'.</msg>
<msg time="2026-07-28T01:56:47.016705" level="INFO">${output} = PING 10.30.171.224 (10.30.171.224) 56(84) bytes of data.
64 bytes from 10.30.171.224: icmp_seq=1 ttl=64 time=0.731 ms

--- 10.30.171.224 ping statistics ---
1 packets transmitted, 1 received, 0% packe...</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-07-28T01:56:47.012177" elapsed="0.004559"/>
</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-07-28T01:56:47.016937" elapsed="0.000335"/>
</kw>
<arg>${test_switch.mgmt_ip}</arg>
<status status="PASS" start="2026-07-28T01:56:47.009906" elapsed="0.007430"/>
</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-07-28T01:56:47.021147" elapsed="0.000366"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.018795" elapsed="0.002761"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.018775" elapsed="0.002819"/>
</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-07-28T01:56:47.023800" elapsed="0.000313"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.021651" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.021634" elapsed="0.002546"/>
</if>
<if>
<branch type="IF" condition="&quot;${switch.mgmt_protocol}&quot; == &quot;ssh&quot;">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:56:47.030781" 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-07-28T01:56:47.026384" elapsed="0.004424"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.024248" elapsed="0.006651"/>
</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-07-28T01:56:47.031125" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:47.030927" elapsed="0.000256"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.024231" elapsed="0.006974"/>
</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-07-28T01:56:47.037522" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:56:47.369848" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:56:31 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:56:47.033400" elapsed="0.336592"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.031261" elapsed="0.338792"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.031245" elapsed="0.338849"/>
</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-07-28T01:56:47.372636" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:47.370194" elapsed="0.002507"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:47.373368" 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-07-28T01:56:47.372980" elapsed="0.000416"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.372725" elapsed="0.000707"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.370165" elapsed="0.003304"/>
</if>
<return>
<value>${connection_index}</value>
<status status="PASS" start="2026-07-28T01:56:47.373510" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:56:47.373696" 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-07-28T01:56:47.018602" elapsed="0.355120"/>
</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-07-28T01:56:47.373922" elapsed="0.000315"/>
</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-07-28T01:56:47.376892" elapsed="0.002198"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.374807" elapsed="0.004322"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.374790" elapsed="0.004363"/>
</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-07-28T01:56:47.381312" elapsed="0.002259"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.379213" elapsed="0.004400"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.379194" elapsed="0.004443"/>
</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-07-28T01:56:47.385792" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:47.383692" elapsed="0.002155"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.383676" elapsed="0.002195"/>
</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-07-28T01:56:47.388006" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:47.385925" elapsed="0.002139"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.385910" elapsed="0.002178"/>
</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-07-28T01:56:47.374600" elapsed="0.013535"/>
</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-07-28T01:56:47.392807" elapsed="0.000233"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:47.390716" elapsed="0.002362"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.390698" elapsed="0.002405"/>
</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-07-28T01:56:47.395322" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:47.393169" elapsed="0.002211"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:47.393152" elapsed="0.002251"/>
</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-07-28T01:56:47.390487" elapsed="0.004963"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:56:48.396108" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:56:47.395654" elapsed="1.000721"/>
</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-07-28T01:56:48.403227" level="INFO">pwd</msg>
<doc>Consumes and returns everything available on the server output.</doc>
<status status="PASS" start="2026-07-28T01:56:48.402902" elapsed="0.000433"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:48.397962" elapsed="0.005583"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.397914" elapsed="0.005696"/>
</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-07-28T01:56:48.406149" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:48.403739" elapsed="0.002463"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.403702" elapsed="0.002523"/>
</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-07-28T01:56:48.397375" elapsed="0.008899"/>
</kw>
<var name="${cmd}">pwd</var>
<status status="PASS" start="2026-07-28T01:56:47.390239" elapsed="1.016070"/>
</iter>
<var>${cmd}</var>
<value>@{switch.connection_configs}</value>
<status status="PASS" start="2026-07-28T01:56:47.388195" elapsed="1.018155"/>
</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-07-28T01:56:47.018035" elapsed="1.388377"/>
</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-07-28T01:56:48.409049" elapsed="0.002014"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:48.406937" elapsed="0.004164"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.406920" elapsed="0.004204"/>
</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-07-28T01:56:48.413249" elapsed="0.002258"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:48.411179" elapsed="0.004369"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.411163" 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-07-28T01:56:48.417689" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:48.415627" elapsed="0.002117"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.415611" elapsed="0.002156"/>
</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-07-28T01:56:48.419908" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:48.417821" elapsed="0.002146"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.417805" 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-07-28T01:56:48.406744" elapsed="0.013292"/>
</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-07-28T01:56:48.424691" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:48.422554" elapsed="0.002502"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.422537" elapsed="0.002543"/>
</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-07-28T01:56:48.427325" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:48.425146" elapsed="0.002236"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:48.425119" elapsed="0.002287"/>
</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-07-28T01:56:48.422313" elapsed="0.005155"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.428171" level="INFO">Slept 1 second.</msg>
<arg>1</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:56:48.427682" elapsed="1.000721"/>
</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-07-28T01:56:49.436084" 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-07-28T01:56:49.435811" elapsed="0.000357"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.431120" elapsed="0.005097"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.431071" elapsed="0.005185"/>
</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-07-28T01:56:49.439442" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.436337" elapsed="0.003214"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.436313" elapsed="0.003272"/>
</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-07-28T01:56:49.430591" elapsed="0.009081"/>
</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-07-28T01:56:49.429205" elapsed="0.010539"/>
</kw>
<var name="${cmd}">['/sbin/ifconfig -a | egrep \'^s\' | awk \'{print "sudo ovs-vsctl del-br",$1}\' | sh']</var>
<status status="PASS" start="2026-07-28T01:56:48.422087" elapsed="1.017704"/>
</iter>
<var>${cmd}</var>
<value>@{switch.initialization_cmds}</value>
<status status="PASS" start="2026-07-28T01:56:48.420089" elapsed="1.019756"/>
</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-07-28T01:56:49.443103" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.439942" elapsed="0.003267"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.439917" elapsed="0.003341"/>
</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-07-28T01:56:49.446527" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.443360" elapsed="0.003233"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.443335" elapsed="0.003282"/>
</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-07-28T01:56:47.017677" elapsed="2.428990"/>
</kw>
<kw name="Configure OpenFlow" owner="SwitchUtils">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.447481" 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-07-28T01:56:49.447229" elapsed="0.000301"/>
</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-07-28T01:56:49.450317" elapsed="0.002075"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.448062" elapsed="0.004370"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.448044" elapsed="0.004427"/>
</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-07-28T01:56:49.454678" elapsed="0.002273"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.452533" elapsed="0.004460"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.452512" elapsed="0.004506"/>
</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-07-28T01:56:49.459252" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.457075" elapsed="0.002235"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.457057" elapsed="0.002276"/>
</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-07-28T01:56:49.461564" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.459398" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.459380" elapsed="0.002269"/>
</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-07-28T01:56:49.447851" elapsed="0.013846"/>
</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-07-28T01:56:49.469236" elapsed="0.002110"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.467094" elapsed="0.004292"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.467076" elapsed="0.004334"/>
</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-07-28T01:56:49.473654" elapsed="0.002278"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.471487" elapsed="0.004486"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.471450" elapsed="0.004547"/>
</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-07-28T01:56:49.478276" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.476056" elapsed="0.002285"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.476036" elapsed="0.002328"/>
</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-07-28T01:56:49.480580" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.478419" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.478403" elapsed="0.002262"/>
</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-07-28T01:56:49.466904" elapsed="0.013807"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.481493" 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-07-28T01:56:49.481101" elapsed="0.000443"/>
</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-07-28T01:56:49.484325" elapsed="0.000117"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.481969" elapsed="0.002562"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.481951" elapsed="0.002640"/>
</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-07-28T01:56:49.486984" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.484651" elapsed="0.002389"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.484635" elapsed="0.002428"/>
</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-07-28T01:56:49.481783" elapsed="0.005327"/>
</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-07-28T01:56:49.490124" level="INFO">Executing command 'sudo ovs-vsctl add-br s1'.</msg>
<msg time="2026-07-28T01:56:49.523904" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:56:49.524198" 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-07-28T01:56:49.489988" elapsed="0.034268"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.487688" elapsed="0.036719"/>
</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-07-28T01:56:49.525076" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.524507" elapsed="0.000738"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.487669" elapsed="0.037625"/>
</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-07-28T01:56:49.531192" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.525535" elapsed="0.005849"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.532845" 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-07-28T01:56:49.531974" elapsed="0.000936"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.531439" elapsed="0.001555"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.525481" elapsed="0.007629"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.533236" elapsed="0.000081"/>
</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-07-28T01:56:49.487399" elapsed="0.046244"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl add-br s1</var>
<status status="PASS" start="2026-07-28T01:56:49.480926" elapsed="0.052803"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.534909" 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-07-28T01:56:49.534505" elapsed="0.000468"/>
</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-07-28T01:56:49.538902" elapsed="0.000165"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.535738" elapsed="0.003378"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.535669" elapsed="0.003481"/>
</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-07-28T01:56:49.542522" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.539225" elapsed="0.003373"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.539202" elapsed="0.003474"/>
</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-07-28T01:56:49.535356" elapsed="0.007391"/>
</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-07-28T01:56:49.546841" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:49.581427" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:49.581772" 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-07-28T01:56:49.546651" elapsed="0.035165"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.543548" elapsed="0.038358"/>
</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-07-28T01:56:49.582443" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.581961" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.543522" elapsed="0.039071"/>
</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-07-28T01:56:49.586223" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.582702" elapsed="0.003613"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.587237" 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-07-28T01:56:49.586651" elapsed="0.000625"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.586350" elapsed="0.000982"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.582674" elapsed="0.004694"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.587428" elapsed="0.000100"/>
</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-07-28T01:56:49.543141" elapsed="0.044624"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set bridge s1 protocols=OpenFlow13</var>
<status status="PASS" start="2026-07-28T01:56:49.534137" elapsed="0.053708"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.588976" level="INFO">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</msg>
<arg>${cmd}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:49.588338" elapsed="0.000769"/>
</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-07-28T01:56:49.594331" elapsed="0.000163"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.590178" elapsed="0.004434"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.590139" elapsed="0.004501"/>
</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-07-28T01:56:49.596868" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.594696" elapsed="0.002226"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.594679" elapsed="0.002266"/>
</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-07-28T01:56:49.589726" elapsed="0.007266"/>
</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-07-28T01:56:49.599850" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1 tcp:10.30.170.50'.</msg>
<msg time="2026-07-28T01:56:49.641659" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:49.642048" 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-07-28T01:56:49.599710" elapsed="0.042403"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.597588" elapsed="0.044688"/>
</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-07-28T01:56:49.643103" elapsed="0.000067"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.642364" elapsed="0.000938"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.597570" elapsed="0.045800"/>
</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-07-28T01:56:49.649149" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.643578" elapsed="0.005734"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.650327" 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-07-28T01:56:49.649735" elapsed="0.000635"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.649361" elapsed="0.001063"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.643529" elapsed="0.006955"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.650551" elapsed="0.000057"/>
</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-07-28T01:56:49.597335" elapsed="0.053431"/>
</kw>
<var name="${cmd}">sudo ovs-vsctl set-controller s1 tcp:10.30.170.50</var>
<status status="PASS" start="2026-07-28T01:56:49.588030" elapsed="0.062794"/>
</iter>
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.651672" 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-07-28T01:56:49.651254" elapsed="0.000486"/>
</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-07-28T01:56:49.655992" elapsed="0.000288"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.652520" elapsed="0.003824"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.652489" elapsed="0.003896"/>
</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-07-28T01:56:49.659878" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.656507" elapsed="0.003468"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.656479" elapsed="0.003535"/>
</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-07-28T01:56:49.652142" elapsed="0.007966"/>
</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-07-28T01:56:49.663651" level="INFO">Executing command 'sudo ifconfig s1 up'.</msg>
<msg time="2026-07-28T01:56:49.705764" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:49.706126" 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-07-28T01:56:49.663470" elapsed="0.042716"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.661207" elapsed="0.045094"/>
</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-07-28T01:56:49.707053" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.706377" elapsed="0.000810"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.661168" elapsed="0.046069"/>
</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-07-28T01:56:49.711497" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.707388" elapsed="0.004199"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.712476" 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-07-28T01:56:49.711896" elapsed="0.000621"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.711622" elapsed="0.000951"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.707347" elapsed="0.005259"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.712663" elapsed="0.000055"/>
</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-07-28T01:56:49.660645" elapsed="0.052229"/>
</kw>
<var name="${cmd}">sudo ifconfig s1 up</var>
<status status="PASS" start="2026-07-28T01:56:49.650989" elapsed="0.061967"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:56:49.480764" elapsed="0.232248"/>
</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-07-28T01:56:49.464499" elapsed="0.248603"/>
</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-07-28T01:56:49.717107" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.713939" elapsed="0.003414"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.713915" elapsed="0.003473"/>
</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-07-28T01:56:49.720963" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.717491" elapsed="0.003568"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.717444" elapsed="0.003650"/>
</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-07-28T01:56:49.713634" elapsed="0.007534"/>
</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-07-28T01:56:49.734958" elapsed="0.003098"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.732809" elapsed="0.005378"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.732790" elapsed="0.005522"/>
</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-07-28T01:56:49.744221" elapsed="0.005524"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.738517" elapsed="0.011271"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.738439" elapsed="0.011374"/>
</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-07-28T01:56:49.752142" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.749870" elapsed="0.002330"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.749853" elapsed="0.002371"/>
</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-07-28T01:56:49.754608" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.752281" elapsed="0.002388"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.752265" elapsed="0.002429"/>
</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-07-28T01:56:49.732619" elapsed="0.022135"/>
</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-07-28T01:56:49.757712" elapsed="0.000141"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.755379" elapsed="0.002508"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.755361" elapsed="0.002549"/>
</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-07-28T01:56:49.760237" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.757965" elapsed="0.002326"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.757949" elapsed="0.002366"/>
</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-07-28T01:56:49.755114" elapsed="0.005249"/>
</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-07-28T01:56:49.763472" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:49.776684" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:49.776843" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:49.763308" elapsed="0.013579"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.760998" elapsed="0.015945"/>
</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-07-28T01:56:49.777329" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.776978" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.760980" elapsed="0.016466"/>
</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-07-28T01:56:49.781035" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.777602" elapsed="0.003564"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.782057" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:49.781482" elapsed="0.000617"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.781200" elapsed="0.000951"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.777576" elapsed="0.004606"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.782238" elapsed="0.000098"/>
</return>
<msg time="2026-07-28T01:56:49.782555" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:49.760759" elapsed="0.021835"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.783403" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17005  bytes 219404060 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9316  bytes 1636898 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 3  bytes 324 (324.0 B)
        RX errors 0  dropped 3  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-07-28T01:56:49.782992" elapsed="0.000516"/>
</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-07-28T01:56:49.788057" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:49.877560" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:49.877978" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:49.787869" elapsed="0.090176"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.784330" elapsed="0.093825"/>
</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-07-28T01:56:49.879081" elapsed="0.000157"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.878296" elapsed="0.001040"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.784304" elapsed="0.095083"/>
</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-07-28T01:56:49.885714" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.879584" elapsed="0.006272"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.887324" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:49.886390" elapsed="0.000998"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:49.885909" elapsed="0.001592"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:49.879540" elapsed="0.008013"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:49.887636" elapsed="0.000140"/>
</return>
<msg time="2026-07-28T01:56:49.888080" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:49.783956" elapsed="0.104248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:49.889411" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:49.888834" elapsed="0.000645"/>
</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-07-28T01:56:49.890549" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:49.890117" elapsed="0.000516">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:49.889841" elapsed="0.000869">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:49.889827" elapsed="0.000917">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:49.891012" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:49.890813" elapsed="0.000257"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:49.890797" elapsed="0.000296"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:49.889789" elapsed="0.001350">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:49.889542" elapsed="0.001659">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:49.728671" elapsed="0.162655">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:50.912294" elapsed="0.002085"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.910118" elapsed="0.004314"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.910092" elapsed="0.004380"/>
</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-07-28T01:56:50.916719" elapsed="0.002244"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.914531" elapsed="0.004474"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.914514" elapsed="0.004516"/>
</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-07-28T01:56:50.921251" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:50.919085" elapsed="0.002224"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.919069" elapsed="0.002264"/>
</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-07-28T01:56:50.923557" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:50.921388" elapsed="0.002233"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.921372" elapsed="0.002273"/>
</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-07-28T01:56:50.909897" elapsed="0.013798"/>
</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-07-28T01:56:50.926485" elapsed="0.000135"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.924144" elapsed="0.002519"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.924124" elapsed="0.002566"/>
</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-07-28T01:56:50.928930" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:50.926746" elapsed="0.002237"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.926730" elapsed="0.002277"/>
</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-07-28T01:56:50.923949" elapsed="0.005116"/>
</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-07-28T01:56:50.931908" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:50.945382" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:50.945555" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:50.931762" elapsed="0.013844"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.929594" elapsed="0.016070"/>
</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-07-28T01:56:50.945999" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:50.945700" elapsed="0.000394"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.929576" elapsed="0.016549"/>
</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-07-28T01:56:50.949326" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:50.946206" elapsed="0.003207"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:50.950232" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:50.949742" elapsed="0.000533"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.949447" elapsed="0.000880"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.946184" elapsed="0.004173"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:50.950409" elapsed="0.000072"/>
</return>
<msg time="2026-07-28T01:56:50.950674" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:50.929364" elapsed="0.021372"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:50.951474" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17037  bytes 219407250 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9347  bytes 1649016 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 432 (432.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-07-28T01:56:50.951016" elapsed="0.000641"/>
</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-07-28T01:56:50.955729" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:51.065588" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:51.065839" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:50.955513" elapsed="0.110386"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:50.952414" elapsed="0.113577"/>
</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-07-28T01:56:51.066599" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:51.066050" elapsed="0.000688"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:50.952389" elapsed="0.114398"/>
</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-07-28T01:56:51.071981" elapsed="0.000065"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:51.066915" elapsed="0.005221"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:51.073634" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:51.072657" elapsed="0.001053"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:51.072190" elapsed="0.001605"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:51.066879" elapsed="0.006964"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:51.073919" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:56:51.074269" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:50.952061" elapsed="0.122281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:51.075494" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:51.074866" 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">
<msg time="2026-07-28T01:56:51.076973" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:51.076406" elapsed="0.000672">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:51.076015" elapsed="0.001182">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:51.075995" elapsed="0.001248">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:51.077649" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:51.077340" elapsed="0.000395"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:51.077317" elapsed="0.000451"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:51.075945" elapsed="0.001885">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:51.075641" elapsed="0.002274">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:50.905701" elapsed="0.172370">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.100353" elapsed="0.002175"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.098189" elapsed="0.004392"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.098164" elapsed="0.004444"/>
</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-07-28T01:56:52.104872" elapsed="0.002357"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.102665" elapsed="0.004610"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.102648" elapsed="0.004659"/>
</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-07-28T01:56:52.109548" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.107365" elapsed="0.002261"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.107348" elapsed="0.002302"/>
</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-07-28T01:56:52.111857" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.109707" elapsed="0.002213"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.109691" elapsed="0.002252"/>
</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-07-28T01:56:52.097972" elapsed="0.014022"/>
</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-07-28T01:56:52.114671" elapsed="0.000138"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.112448" elapsed="0.002397"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.112430" elapsed="0.002439"/>
</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-07-28T01:56:52.117066" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.114924" elapsed="0.002196"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.114908" elapsed="0.002235"/>
</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-07-28T01:56:52.112247" elapsed="0.004944"/>
</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-07-28T01:56:52.120031" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:52.133328" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:52.133593" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:52.119882" elapsed="0.013782"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.117742" elapsed="0.016010"/>
</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-07-28T01:56:52.134260" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.133807" elapsed="0.000585"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.117724" elapsed="0.016718"/>
</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-07-28T01:56:52.139536" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.134607" elapsed="0.005068"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:52.140921" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:52.140139" elapsed="0.000848"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.139728" elapsed="0.001341"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.134570" elapsed="0.006552"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:52.141224" elapsed="0.000092"/>
</return>
<msg time="2026-07-28T01:56:52.141698" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:52.117511" elapsed="0.024263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:52.142618" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17049  bytes 219408530 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9361  bytes 1652260 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 432 (432.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-07-28T01:56:52.142236" elapsed="0.000441"/>
</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-07-28T01:56:52.145497" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:52.233619" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:52.233999" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:52.145350" elapsed="0.088715"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.143197" elapsed="0.090963"/>
</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-07-28T01:56:52.234759" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.234219" elapsed="0.000682"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.143175" elapsed="0.091791"/>
</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-07-28T01:56:52.240769" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.235107" elapsed="0.005810"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:52.242283" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:52.241413" elapsed="0.000935"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:52.240972" elapsed="0.001473"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:52.235069" elapsed="0.007487"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:52.242604" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:56:52.242776" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:52.142959" elapsed="0.099843"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:52.243265" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.243001" elapsed="0.000312"/>
</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-07-28T01:56:52.244350" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.243950" elapsed="0.000481">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:52.243671" elapsed="0.000868">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:52.243657" elapsed="0.000919">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.244856" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:52.244647" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:52.244630" elapsed="0.000308"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:52.243621" elapsed="0.001362">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.243371" elapsed="0.001675">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:52.093813" elapsed="0.151351">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.266084" elapsed="0.002114"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.263881" elapsed="0.004371"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.263858" 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-07-28T01:56:53.270536" elapsed="0.002291"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.268338" elapsed="0.004532"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.268321" elapsed="0.004577"/>
</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-07-28T01:56:53.275207" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.272966" elapsed="0.002309"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.272949" elapsed="0.002353"/>
</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-07-28T01:56:53.277576" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.275361" elapsed="0.002281"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.275344" elapsed="0.002321"/>
</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-07-28T01:56:53.263674" elapsed="0.014042"/>
</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-07-28T01:56:53.280309" elapsed="0.000136"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.278168" elapsed="0.002328"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.278149" elapsed="0.002371"/>
</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-07-28T01:56:53.282745" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.280577" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.280560" elapsed="0.002414"/>
</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-07-28T01:56:53.277964" elapsed="0.005070"/>
</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-07-28T01:56:53.286069" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:53.298860" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:53.299017" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:53.285926" elapsed="0.013130"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.283563" elapsed="0.015551"/>
</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-07-28T01:56:53.299512" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.299150" elapsed="0.000450"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.283544" elapsed="0.016087"/>
</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-07-28T01:56:53.302832" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.299723" elapsed="0.003195"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:53.303723" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:53.303227" elapsed="0.000538"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.302952" elapsed="0.000876"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.299692" elapsed="0.004172"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:53.303918" elapsed="0.000050"/>
</return>
<msg time="2026-07-28T01:56:53.304176" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:53.283332" elapsed="0.020894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:53.305068" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17072  bytes 219410744 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9383  bytes 1662448 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 4  bytes 432 (432.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-07-28T01:56:53.304591" elapsed="0.000564"/>
</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-07-28T01:56:53.309271" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:53.401943" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:53.402290" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:53.309078" elapsed="0.093278"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.305964" elapsed="0.096552"/>
</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-07-28T01:56:53.403429" elapsed="0.000109"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.402841" elapsed="0.000785"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.305940" elapsed="0.097736"/>
</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-07-28T01:56:53.409086" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.403829" elapsed="0.005344"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:53.410037" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:53.409493" elapsed="0.000593"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:53.409206" elapsed="0.000935"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:53.403785" elapsed="0.006386"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:53.410232" elapsed="0.000056"/>
</return>
<msg time="2026-07-28T01:56:53.410506" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version...</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-07-28T01:56:53.305627" elapsed="0.104926"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:53.411205" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.410846" elapsed="0.000427"/>
</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-07-28T01:56:53.412670" level="FAIL">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.412122" elapsed="0.000684">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:56:53.411747" elapsed="0.001166">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        Port s1
            Interface s1
                type: internal
    ovs_version: "2.17.11"' does not match 'is_connected: true'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:56:53.411726" elapsed="0.001233">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.413328" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:53.413056" elapsed="0.000356"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:56:53.413033" elapsed="0.000418"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="FAIL" start="2026-07-28T01:56:53.411677" elapsed="0.001888">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.411351" elapsed="0.002362">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:53.259493" elapsed="0.154413">'9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
        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-07-28T01:56:54.435186" elapsed="0.002213"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.432522" elapsed="0.004927"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.432496" elapsed="0.004997"/>
</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-07-28T01:56:54.439842" elapsed="0.002381"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.437593" elapsed="0.004671"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.437575" elapsed="0.004714"/>
</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-07-28T01:56:54.444676" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.442384" elapsed="0.002350"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.442366" elapsed="0.002391"/>
</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-07-28T01:56:54.446994" elapsed="0.000094"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.444812" elapsed="0.002351"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.444797" elapsed="0.002393"/>
</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-07-28T01:56:54.432294" elapsed="0.014947"/>
</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-07-28T01:56:54.449984" elapsed="0.000131"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.447726" elapsed="0.002423"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.447708" elapsed="0.002465"/>
</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-07-28T01:56:54.452512" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.450259" elapsed="0.002307"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.450210" elapsed="0.002379"/>
</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-07-28T01:56:54.447498" elapsed="0.005139"/>
</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-07-28T01:56:54.455627" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:54.468579" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:54.468865" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:54.455483" elapsed="0.013448"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.453165" elapsed="0.015851"/>
</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-07-28T01:56:54.469674" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.469070" elapsed="0.000742"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.453148" elapsed="0.016712"/>
</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-07-28T01:56:54.475412" elapsed="0.000082"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.470026" elapsed="0.005557"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.477036" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:54.476111" elapsed="0.000990"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.475636" elapsed="0.001549"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.469983" elapsed="0.007320"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:54.477388" elapsed="0.000109"/>
</return>
<msg time="2026-07-28T01:56:54.477842" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:54.452958" elapsed="0.024948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.479179" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17089  bytes 219412532 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9400  bytes 1665906 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:54.478486" elapsed="0.000826"/>
</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-07-28T01:56:54.483103" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:56:54.573607" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:54.573971" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:54.482915" elapsed="0.091134"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.480703" elapsed="0.093464"/>
</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-07-28T01:56:54.574918" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.574241" elapsed="0.000830"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.480684" elapsed="0.094448"/>
</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-07-28T01:56:54.579205" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.575302" elapsed="0.003992"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.580152" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:54.579615" elapsed="0.000595"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.579327" elapsed="0.000945"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.575260" elapsed="0.005050"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:54.580367" elapsed="0.000052"/>
</return>
<msg time="2026-07-28T01:56:54.580636" level="INFO">${output} = 9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:54.480045" elapsed="0.100638"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.581339" level="INFO">9a5df812-eb49-4477-a37e-2d464c02791d
    Manager "ptcp:6644"
    Bridge s1
        Controller "tcp:10.30.170.50"
            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-07-28T01:56:54.580963" elapsed="0.000451"/>
</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-07-28T01:56:54.582310" elapsed="0.000506"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.581917" elapsed="0.000957"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.581897" elapsed="0.001012"/>
</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-07-28T01:56:54.583382" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.583000" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.582974" elapsed="0.000549"/>
</if>
<var name="${str}">is_connected: true</var>
<status status="PASS" start="2026-07-28T01:56:54.581847" elapsed="0.001709"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:54.581522" elapsed="0.002076"/>
</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-07-28T01:56:54.427833" elapsed="0.155843"/>
</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-07-28T01:56:49.721430" elapsed="4.862344"/>
</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-07-28T01:56:54.587852" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.584503" elapsed="0.003577"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.584477" elapsed="0.003637"/>
</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-07-28T01:56:54.590504" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.588232" elapsed="0.002336"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.588168" elapsed="0.002425"/>
</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-07-28T01:56:54.584160" elapsed="0.006481"/>
</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-07-28T01:56:49.446894" elapsed="5.143802"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:54.591259" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868a3888c10&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-07-28T01:56:54.590909" elapsed="0.000554"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:46.336935" elapsed="8.254602"/>
</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-07-28T01:56:54.593509" 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-07-28T01:56:54.592984" elapsed="0.000562"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.594179" 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-07-28T01:56:54.593758" elapsed="0.000448"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:56:54.594879" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868b00d2050&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:56:54.594749" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.594950" elapsed="0.000074"/>
</return>
<msg time="2026-07-28T01:56:54.595165" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868b00d2050&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-07-28T01:56:54.594405" elapsed="0.000787"/>
</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-07-28T01:56:54.600238" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.599902" elapsed="0.000405"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.600848" 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-07-28T01:56:54.600536" elapsed="0.000340"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.600332" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.599884" elapsed="0.001051"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.607993" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b8fe0&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-07-28T01:56:54.605611" elapsed="0.002416"/>
</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-07-28T01:56:54.608681" 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-07-28T01:56:54.608268" elapsed="0.000788"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.609635" 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-07-28T01:56:54.609254" 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-07-28T01:56:54.609870" elapsed="0.000168"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.610090" 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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:54.605166" elapsed="0.005048"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.643029" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb290&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-07-28T01:56:54.640694" elapsed="0.002368"/>
</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-07-28T01:56:54.643270" elapsed="0.000466"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.644338" 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-07-28T01:56:54.643959" 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-07-28T01:56:54.644591" elapsed="0.000169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.647261" 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-07-28T01:56:54.644958" elapsed="0.002363"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.647377" elapsed="0.000041"/>
</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 0x7868b00d2050&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-07-28T01:56:54.640054" elapsed="0.007512"/>
</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-07-28T01:56:54.647784" elapsed="0.000193"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.648037" elapsed="0.000029"/>
</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-07-28T01:56:54.599589" elapsed="0.048592"/>
</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-07-28T01:56:54.653483" 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-07-28T01:56:54.653235" elapsed="0.000276"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.652916" elapsed="0.000638"/>
</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-07-28T01:56:54.653767" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.653580" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.652895" elapsed="0.001028"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.660841" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba700&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-07-28T01:56:54.658577" elapsed="0.002292"/>
</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-07-28T01:56:54.661507" 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-07-28T01:56:54.661093" elapsed="0.000786"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.662426" 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-07-28T01:56:54.662075" 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-07-28T01:56:54.662671" elapsed="0.000177"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.662900" 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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:54.658136" elapsed="0.004888"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.696919" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb2e0&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-07-28T01:56:54.694330" elapsed="0.002622"/>
</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-07-28T01:56:54.697205" elapsed="0.000510"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.698517" 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-07-28T01:56:54.698138" 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-07-28T01:56:54.698781" elapsed="0.000168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.701788" 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-07-28T01:56:54.699145" elapsed="0.002694"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.701890" elapsed="0.000041"/>
</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 0x7868b00d2050&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-07-28T01:56:54.693597" elapsed="0.008438"/>
</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-07-28T01:56:54.702273" elapsed="0.000202"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.702527" elapsed="0.000029"/>
</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-07-28T01:56:54.652596" elapsed="0.050094"/>
</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-07-28T01:56:54.708224" 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-07-28T01:56:54.707944" elapsed="0.000308"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:54.707587" elapsed="0.000708"/>
</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-07-28T01:56:54.708529" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:54.708322" elapsed="0.000302"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:54.707566" elapsed="0.001081"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.715936" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba8e0&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-07-28T01:56:54.713553" elapsed="0.002413"/>
</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-07-28T01:56:54.716701" 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-07-28T01:56:54.716252" elapsed="0.000843"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.717708" 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-07-28T01:56:54.717323" elapsed="0.000490"/>
</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-07-28T01:56:54.718011" elapsed="0.000168"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.718268" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:54.713099" elapsed="0.005297"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.756309" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb420&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-07-28T01:56:54.752998" elapsed="0.003399"/>
</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-07-28T01:56:54.756702" elapsed="0.000537"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.758075" 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-07-28T01:56:54.757584" elapsed="0.000532"/>
</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-07-28T01:56:54.758433" elapsed="0.000248"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.762342" 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-07-28T01:56:54.758990" elapsed="0.003416"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.762523" elapsed="0.000063"/>
</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 0x7868b00d2050&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-07-28T01:56:54.751804" elapsed="0.010980"/>
</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-07-28T01:56:54.763059" elapsed="0.000295"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.763421" elapsed="0.000058"/>
</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-07-28T01:56:54.707218" elapsed="0.056396"/>
</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-07-28T01:56:54.778449" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba0c0&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-07-28T01:56:54.772567" elapsed="0.005979"/>
</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-07-28T01:56:54.779928" elapsed="0.000789"/>
</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-07-28T01:56:54.779029" elapsed="0.001812"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.782047" 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-07-28T01:56:54.781273" elapsed="0.000838"/>
</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-07-28T01:56:54.782560" elapsed="0.000357"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.783032" elapsed="0.000071"/>
</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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:54.771371" elapsed="0.011945"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.783420" elapsed="0.000085"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:54.763989" elapsed="0.019720"/>
</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-07-28T01:56:54.793927" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba9d0&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-07-28T01:56:54.791581" elapsed="0.002408"/>
</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-07-28T01:56:54.794611" elapsed="0.000338"/>
</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-07-28T01:56:54.794204" elapsed="0.000802"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.795638" 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-07-28T01:56:54.795281" 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-07-28T01:56:54.795861" elapsed="0.000204"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.796140" 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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:54.791138" elapsed="0.005127"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.831996" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b99e0&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-07-28T01:56:54.829660" elapsed="0.002364"/>
</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-07-28T01:56:54.832271" elapsed="0.000499"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.833342" 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-07-28T01:56:54.833010" 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-07-28T01:56:54.833621" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.836546" 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-07-28T01:56:54.834016" elapsed="0.002618"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.836683" elapsed="0.000031"/>
</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 0x7868b00d2050&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-07-28T01:56:54.827207" elapsed="0.009604"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.870971" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba070&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-07-28T01:56:54.868548" elapsed="0.002451"/>
</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-07-28T01:56:54.871194" elapsed="0.000571"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.872470" 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-07-28T01:56:54.871971" elapsed="0.000531"/>
</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-07-28T01:56:54.872731" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.875618" 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-07-28T01:56:54.873122" elapsed="0.002553"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.875723" elapsed="0.000031"/>
</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 0x7868b00d2050&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-07-28T01:56:54.867996" elapsed="0.007863"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.911130" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b8f40&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-07-28T01:56:54.908858" elapsed="0.002302"/>
</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-07-28T01:56:54.911361" elapsed="0.000468"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.912396" 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-07-28T01:56:54.912046" 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-07-28T01:56:54.912712" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.915260" 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-07-28T01:56:54.913073" elapsed="0.002239"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.915358" elapsed="0.000035"/>
</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 0x7868b00d2050&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-07-28T01:56:54.906518" elapsed="0.008994"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.950047" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b8f90&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-07-28T01:56:54.947672" elapsed="0.002443"/>
</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-07-28T01:56:54.950312" elapsed="0.000523"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.951471" 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-07-28T01:56:54.951077" 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-07-28T01:56:54.951731" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.954702" 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-07-28T01:56:54.952154" elapsed="0.002601"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.954799" 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 0x7868b00d2050&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-07-28T01:56:54.945243" elapsed="0.009683"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:54.989688" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb380&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-07-28T01:56:54.987241" elapsed="0.002475"/>
</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-07-28T01:56:54.989961" elapsed="0.000516"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:54.991108" 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-07-28T01:56:54.990723" 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-07-28T01:56:54.991366" elapsed="0.000187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:54.994141" 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-07-28T01:56:54.991784" elapsed="0.002409"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:54.994275" 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 0x7868b00d2050&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-07-28T01:56:54.986619" elapsed="0.007784"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.028892" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb650&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-07-28T01:56:55.026497" elapsed="0.002423"/>
</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-07-28T01:56:55.029152" elapsed="0.000541"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.030315" 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-07-28T01:56:55.029935" 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-07-28T01:56:55.030553" elapsed="0.000200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.033333" 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-07-28T01:56:55.030977" elapsed="0.002446"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.033482" elapsed="0.000033"/>
</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 0x7868b00d2050&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-07-28T01:56:55.025953" elapsed="0.007663"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.033671" elapsed="0.000063"/>
</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-07-28T01:56:54.784848" elapsed="0.248981"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.068323" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9850&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-07-28T01:56:55.065878" elapsed="0.002473"/>
</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-07-28T01:56:55.068562" elapsed="0.000538"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.069712" 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-07-28T01:56:55.069307" elapsed="0.000437"/>
</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-07-28T01:56:55.069969" elapsed="0.000197"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.072945" 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-07-28T01:56:55.070359" elapsed="0.002641"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.073044" elapsed="0.000067"/>
</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 0x7868b00d2050&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-07-28T01:56:55.065317" elapsed="0.007895"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.073266" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:56:54.784199" elapsed="0.289184"/>
</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-07-28T01:56:55.085513" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba700&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-07-28T01:56:55.083297" 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-07-28T01:56:55.086140" elapsed="0.000333"/>
</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-07-28T01:56:55.085751" elapsed="0.000782"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.087150" 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-07-28T01:56:55.086766" 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-07-28T01:56:55.087473" elapsed="0.000169"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.087728" elapsed="0.000030"/>
</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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.082842" elapsed="0.005012"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.087901" 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 0x7868b00d2050&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:55.078226" elapsed="0.009810"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.124349" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb8d0&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-07-28T01:56:55.121775" elapsed="0.002604"/>
</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-07-28T01:56:55.124632" elapsed="0.000481"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.125771" 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-07-28T01:56:55.125357" elapsed="0.000445"/>
</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-07-28T01:56:55.126032" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.128882" 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-07-28T01:56:55.126427" elapsed="0.002550"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.129025" elapsed="0.000034"/>
</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 0x7868b00d2050&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-07-28T01:56:55.119246" elapsed="0.009912"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:55.129665" 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-07-28T01:56:55.129414" elapsed="0.000279"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.167981" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b8810&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-07-28T01:56:55.165656" elapsed="0.002356"/>
</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-07-28T01:56:55.168223" elapsed="0.000492"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.169298" 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-07-28T01:56:55.168932" 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-07-28T01:56:55.169544" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.172177" 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-07-28T01:56:55.169914" elapsed="0.002319"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.172277" elapsed="0.000030"/>
</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 0x7868b00d2050&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-07-28T01:56:55.163324" elapsed="0.009092"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.204754" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb5b0&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-07-28T01:56:55.202471" elapsed="0.002311"/>
</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-07-28T01:56:55.205040" elapsed="0.000484"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.206104" 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-07-28T01:56:55.205731" 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-07-28T01:56:55.206327" elapsed="0.000190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.208981" 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-07-28T01:56:55.206714" elapsed="0.002322"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.209080" 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 0x7868b00d2050&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-07-28T01:56:55.201969" elapsed="0.007238"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:55.209643" 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-07-28T01:56:55.209427" elapsed="0.000243"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.244057" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9760&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-07-28T01:56:55.241734" elapsed="0.002352"/>
</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-07-28T01:56:55.244290" elapsed="0.000482"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.245346" 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-07-28T01:56:55.244975" 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-07-28T01:56:55.245596" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.249511" 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-07-28T01:56:55.245961" elapsed="0.003613"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.249625" elapsed="0.000030"/>
</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 0x7868b00d2050&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-07-28T01:56:55.239396" elapsed="0.010358"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.282366" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55030&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-07-28T01:56:55.280086" elapsed="0.002309"/>
</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-07-28T01:56:55.282607" elapsed="0.000479"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.283690" 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-07-28T01:56:55.283292" elapsed="0.000429"/>
</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-07-28T01:56:55.283946" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.286564" 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-07-28T01:56:55.284318" elapsed="0.002345"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.286714" 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 0x7868b00d2050&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-07-28T01:56:55.279565" elapsed="0.007278"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:55.287251" 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-07-28T01:56:55.287055" elapsed="0.000222"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.321771" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f57560&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-07-28T01:56:55.319413" elapsed="0.002390"/>
</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-07-28T01:56:55.322000" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.323073" 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-07-28T01:56:55.322689" 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-07-28T01:56:55.323296" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.325964" 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-07-28T01:56:55.323682" elapsed="0.002338"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.326067" elapsed="0.000039"/>
</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 0x7868b00d2050&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-07-28T01:56:55.317085" elapsed="0.009123"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.359292" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55cb0&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-07-28T01:56:55.356881" elapsed="0.002440"/>
</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-07-28T01:56:55.359569" elapsed="0.000535"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.360726" 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-07-28T01:56:55.360341" elapsed="0.000415"/>
</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-07-28T01:56:55.360945" elapsed="0.000200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.363890" 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-07-28T01:56:55.361336" elapsed="0.002613"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.363993" 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 0x7868b00d2050&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-07-28T01:56:55.356316" elapsed="0.007842"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.364259" elapsed="0.000029"/>
</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-07-28T01:56:55.077793" elapsed="0.286589"/>
</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-07-28T01:56:55.376747" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55b70&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-07-28T01:56:55.374338" elapsed="0.002437"/>
</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-07-28T01:56:55.377416" elapsed="0.000374"/>
</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-07-28T01:56:55.376985" elapsed="0.000861"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.378438" 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-07-28T01:56:55.378074" elapsed="0.000444"/>
</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-07-28T01:56:55.378713" elapsed="0.000198"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.378961" elapsed="0.000030"/>
</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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.373891" elapsed="0.005193"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.379130" 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 0x7868b00d2050&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:55.369350" elapsed="0.009894"/>
</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-07-28T01:56:55.387002" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f541d0&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-07-28T01:56:55.384613" elapsed="0.002417"/>
</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-07-28T01:56:55.387671" elapsed="0.000375"/>
</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-07-28T01:56:55.387233" elapsed="0.000868"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.388674" 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-07-28T01:56:55.388294" 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-07-28T01:56:55.388894" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.389103" 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 0x7868b00d2050&gt;
object. The &lt;FlowLib.Flow object at 0x7868b00d2050&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.384151" elapsed="0.005072"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.389270" 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 0x7868b00d2050&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:55.379504" elapsed="0.009879"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:55.389783" 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-07-28T01:56:55.389597" elapsed="0.000211"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.421712" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba200&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-07-28T01:56:55.419445" elapsed="0.002295"/>
</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-07-28T01:56:55.421936" elapsed="0.000430"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.422962" 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-07-28T01:56:55.422592" 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-07-28T01:56:55.423183" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.425802" 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-07-28T01:56:55.423552" elapsed="0.002343"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.425940" 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 0x7868b00d2050&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-07-28T01:56:55.418977" elapsed="0.007090"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:55.426473" 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-07-28T01:56:55.426274" elapsed="0.000226"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.459236" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b8fe0&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-07-28T01:56:55.456819" elapsed="0.002445"/>
</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-07-28T01:56:55.459506" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.460637" 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-07-28T01:56:55.460244" elapsed="0.000457"/>
</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-07-28T01:56:55.460899" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.463634" 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-07-28T01:56:55.461288" elapsed="0.002440"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.463797" elapsed="0.000031"/>
</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 0x7868b00d2050&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-07-28T01:56:55.456266" elapsed="0.007659"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.463979" elapsed="0.000061"/>
</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-07-28T01:56:55.368844" elapsed="0.095293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.466638" 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-07-28T01:56:55.464327" elapsed="0.002369"/>
</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-07-28T01:56:55.466886" elapsed="0.002420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.471723" 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-07-28T01:56:55.469556" elapsed="0.002227"/>
</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-07-28T01:56:55.475304" elapsed="0.002219"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.472806" elapsed="0.004756"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.472786" elapsed="0.004804"/>
</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-07-28T01:56:55.479950" elapsed="0.002401"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.477647" elapsed="0.004776"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.477630" elapsed="0.004835"/>
</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-07-28T01:56:55.484889" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.482572" elapsed="0.002377"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.482553" elapsed="0.002420"/>
</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-07-28T01:56:55.487268" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.485029" elapsed="0.002335"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.485013" elapsed="0.002376"/>
</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-07-28T01:56:55.472527" elapsed="0.014911"/>
</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-07-28T01:56:55.490267" elapsed="0.000129"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.487985" elapsed="0.002444"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.487967" elapsed="0.002502"/>
</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-07-28T01:56:55.492817" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.490526" elapsed="0.002345"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.490510" elapsed="0.002385"/>
</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-07-28T01:56:55.487689" elapsed="0.005253"/>
</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-07-28T01:56:55.497811" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:56:55.511164" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:55.511262" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:55.497676" elapsed="0.013611"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.495364" elapsed="0.015962"/>
</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-07-28T01:56:55.511612" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.511388" elapsed="0.000283"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.495345" elapsed="0.016382"/>
</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-07-28T01:56:55.514090" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.511807" elapsed="0.002343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.514709" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:55.514389" elapsed="0.000346"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.514174" elapsed="0.000635"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.511789" elapsed="0.003044"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:55.514867" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:55.515050" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:55.493259" elapsed="0.021817"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.517396" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:55.515302" elapsed="0.002140"/>
</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-07-28T01:56:55.517648" elapsed="0.000315"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:56:55.518011" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:55.520301" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:56:55.472035" elapsed="0.048293"/>
</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-07-28T01:56:55.541260" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:55.541378" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01e4n6bw0qhefd8vo1zca7vv6b11.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:56:55 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:55.541523" 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-07-28T01:56:55.528057" elapsed="0.013539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.544238" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:55.541823" elapsed="0.002459"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:55.548961" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:55.549297" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:55.549419" 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-07-28T01:56:55.544496" elapsed="0.004949"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.552431" 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-07-28T01:56:55.549672" elapsed="0.002878"/>
</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-07-28T01:56:55.552751" elapsed="0.002402"/>
</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-07-28T01:56:55.521165" 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-07-28T01:56:55.520592" 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-07-28T01:56:55.571058" elapsed="0.002217"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.568772" elapsed="0.004541"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.568751" elapsed="0.004587"/>
</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-07-28T01:56:55.575736" elapsed="0.002398"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.573393" elapsed="0.004781"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.573376" elapsed="0.004823"/>
</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-07-28T01:56:55.580576" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.578254" elapsed="0.002380"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.578238" elapsed="0.002419"/>
</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-07-28T01:56:55.582961" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.580712" elapsed="0.002343"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.580696" elapsed="0.002384"/>
</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-07-28T01:56:55.568483" elapsed="0.014646"/>
</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-07-28T01:56:55.586002" elapsed="0.000124"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.583705" elapsed="0.002492"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.583687" elapsed="0.002534"/>
</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-07-28T01:56:55.588620" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.586276" elapsed="0.002400"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.586259" elapsed="0.002441"/>
</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-07-28T01:56:55.583447" elapsed="0.005300"/>
</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-07-28T01:56:55.592018" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:55.604913" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:55.605047" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.591883" elapsed="0.013193"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.589362" elapsed="0.015752"/>
</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-07-28T01:56:55.605371" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.605139" elapsed="0.000292"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.589344" elapsed="0.016130"/>
</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-07-28T01:56:55.607895" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.605536" elapsed="0.002418"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.608552" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.608199" elapsed="0.000383"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.607978" elapsed="0.000640"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.605520" elapsed="0.003120"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:55.608677" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:56:55.608873" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.589068" elapsed="0.019834"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.609381" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17109  bytes 219414796 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9421  bytes 1670076 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:55.609098" elapsed="0.000340"/>
</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-07-28T01:56:55.612587" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:55.664421" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:55.664575" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.560s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.114s, 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-07-28T01:56:55.612436" elapsed="0.052166"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.610098" elapsed="0.054544"/>
</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-07-28T01:56:55.664862" elapsed="0.000060"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.664667" elapsed="0.000294"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.610080" elapsed="0.054903"/>
</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-07-28T01:56:55.667352" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.665042" elapsed="0.002371"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.667983" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.560s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.114s, 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-07-28T01:56:55.667634" elapsed="0.000443"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.667436" elapsed="0.000682"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.665026" elapsed="0.003114"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:55.668175" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:56:55.668328" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.560s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.114s, 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-07-28T01:56:55.609780" elapsed="0.058575"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.668847" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.560s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.114s, 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-07-28T01:56:55.668595" elapsed="0.000335"/>
</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-07-28T01:56:55.669563" elapsed="0.000605"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.669278" elapsed="0.000932"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.669229" elapsed="0.001005"/>
</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-07-28T01:56:55.670605" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.670290" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.670274" elapsed="0.000451"/>
</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-07-28T01:56:55.669196" elapsed="0.001552"/>
</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-07-28T01:56:55.671235" elapsed="0.000425"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.670942" elapsed="0.000778"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.670928" elapsed="0.000853"/>
</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-07-28T01:56:55.672138" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.671840" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.671824" elapsed="0.000397"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:55.670898" elapsed="0.001346"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:55.668987" elapsed="0.003285"/>
</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-07-28T01:56:55.563707" elapsed="0.108621"/>
</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-07-28T01:56:55.555543" elapsed="0.116878"/>
</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-07-28T01:56:55.684426" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:55.684492" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:55.684589" 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-07-28T01:56:55.677971" elapsed="0.006643"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.687200" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:55.684817" elapsed="0.002427"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:55.691397" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=161?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:55.691619" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:55.691739" 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-07-28T01:56:55.687406" elapsed="0.004361"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:56:55.696311" elapsed="0.000030"/>
</return>
<status status="PASS" start="2026-07-28T01:56:55.691882" elapsed="0.004490"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.691862" elapsed="0.004535"/>
</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-07-28T01:56:55.696604" 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-07-28T01:56:55.696780" 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-07-28T01:56:55.673238" elapsed="0.023620"/>
</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-07-28T01:56:55.672653" elapsed="0.024257"/>
</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-07-28T01:56:55.712200" elapsed="0.002183"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.709902" elapsed="0.004520"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.709883" elapsed="0.004612"/>
</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-07-28T01:56:55.716849" elapsed="0.002411"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.714558" elapsed="0.004743"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.714539" elapsed="0.004786"/>
</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-07-28T01:56:55.721702" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.719422" elapsed="0.002337"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.719365" elapsed="0.002418"/>
</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-07-28T01:56:55.724123" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.721838" elapsed="0.002344"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.721822" elapsed="0.002384"/>
</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-07-28T01:56:55.709624" elapsed="0.014629"/>
</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-07-28T01:56:55.727061" elapsed="0.000153"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.724822" elapsed="0.002426"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.724801" elapsed="0.002471"/>
</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-07-28T01:56:55.729627" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.727326" elapsed="0.002355"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.727310" elapsed="0.002394"/>
</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-07-28T01:56:55.724542" elapsed="0.005209"/>
</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-07-28T01:56:55.732945" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:55.746014" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:55.746117" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.732761" elapsed="0.013384"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.730358" elapsed="0.015827"/>
</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-07-28T01:56:55.746477" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.746212" elapsed="0.000330"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.730339" elapsed="0.016228"/>
</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-07-28T01:56:55.748942" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.746627" elapsed="0.002374"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.749574" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.749244" elapsed="0.000362"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.749025" elapsed="0.000618"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.746611" elapsed="0.003054"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:55.749700" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:56:55.749899" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:55.730067" elapsed="0.019908"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.750476" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17120  bytes 219416194 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9436  bytes 1673498 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:55.750173" elapsed="0.000364"/>
</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-07-28T01:56:55.753846" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:55.814660" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:55.814796" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.708s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:55.753676" elapsed="0.061150"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.751149" elapsed="0.063718"/>
</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-07-28T01:56:55.815087" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.814893" elapsed="0.000253"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.751131" elapsed="0.064035"/>
</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-07-28T01:56:55.817595" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.815222" elapsed="0.002435"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.818197" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.708s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:55.817864" elapsed="0.000360"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.817681" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.815206" elapsed="0.003076"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:55.818316" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:56:55.818522" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.708s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:55.750828" elapsed="0.067721"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.819032" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=5.708s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:55.818784" elapsed="0.000293"/>
</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-07-28T01:56:55.819786" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.819469" elapsed="0.000378"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.819439" elapsed="0.000431"/>
</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-07-28T01:56:55.820178" elapsed="0.000379"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.819922" elapsed="0.000676"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.819908" elapsed="0.000714"/>
</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-07-28T01:56:55.819371" elapsed="0.001273"/>
</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-07-28T01:56:55.821125" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.820831" elapsed="0.000354"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.820818" elapsed="0.000389"/>
</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-07-28T01:56:55.821563" elapsed="0.000357"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.821259" elapsed="0.000700"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.821244" elapsed="0.000739"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:55.820788" elapsed="0.001217"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:55.819167" elapsed="0.002866"/>
</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-07-28T01:56:55.704952" elapsed="0.117133"/>
</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-07-28T01:56:55.697157" elapsed="0.125062"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>161</arg>
<arg>1</arg>
<status status="PASS" start="2026-07-28T01:56:54.592534" elapsed="1.229756"/>
</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-07-28T01:56:54.591660" elapsed="1.230762"/>
</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-07-28T01:56:55.824638" 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-07-28T01:56:55.824097" elapsed="0.000570"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.825359" 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-07-28T01:56:55.824911" elapsed="0.000475"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:56:55.826061" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a37d6510&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:56:55.825937" elapsed="0.000151"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.826130" elapsed="0.000063"/>
</return>
<msg time="2026-07-28T01:56:55.826318" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a37d6510&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-07-28T01:56:55.825587" elapsed="0.000757"/>
</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-07-28T01:56:55.831548" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.831194" elapsed="0.000434"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.832203" 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-07-28T01:56:55.831870" elapsed="0.000361"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.831653" elapsed="0.000614"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.831176" elapsed="0.001114"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.839770" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a7010&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-07-28T01:56:55.837362" elapsed="0.002436"/>
</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-07-28T01:56:55.840489" elapsed="0.000343"/>
</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-07-28T01:56:55.840046" elapsed="0.000842"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.841519" 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-07-28T01:56:55.841120" elapsed="0.000429"/>
</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-07-28T01:56:55.841744" elapsed="0.000204"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.841999" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.836919" elapsed="0.005203"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.875918" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9df0&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-07-28T01:56:55.873535" 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-07-28T01:56:55.876182" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.877272" 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-07-28T01:56:55.876916" 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-07-28T01:56:55.877507" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.880299" 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-07-28T01:56:55.877900" elapsed="0.002452"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.880396" 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 0x7868a37d6510&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-07-28T01:56:55.872995" elapsed="0.007542"/>
</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-07-28T01:56:55.880820" elapsed="0.000191"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.881145" elapsed="0.000030"/>
</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-07-28T01:56:55.830861" elapsed="0.050409"/>
</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-07-28T01:56:55.886758" 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-07-28T01:56:55.886491" elapsed="0.000294"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.886147" elapsed="0.000680"/>
</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-07-28T01:56:55.887072" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.886853" elapsed="0.000277"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.886129" elapsed="0.001022"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.894341" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bbc90&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-07-28T01:56:55.892005" elapsed="0.002364"/>
</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-07-28T01:56:55.894971" elapsed="0.000292"/>
</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-07-28T01:56:55.894587" elapsed="0.000731"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.895890" 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-07-28T01:56:55.895524" 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-07-28T01:56:55.896109" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.896320" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.891550" elapsed="0.004891"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.928317" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb790&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-07-28T01:56:55.926086" elapsed="0.002259"/>
</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-07-28T01:56:55.928557" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.929534" 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-07-28T01:56:55.929196" elapsed="0.000373"/>
</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-07-28T01:56:55.929759" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.932318" 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-07-28T01:56:55.930107" elapsed="0.002261"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.932412" 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 0x7868a37d6510&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-07-28T01:56:55.925594" elapsed="0.006960"/>
</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-07-28T01:56:55.932751" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.932984" 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-07-28T01:56:55.885851" elapsed="0.047253"/>
</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-07-28T01:56:55.938446" 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-07-28T01:56:55.938192" elapsed="0.000295"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:55.937862" elapsed="0.000704"/>
</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-07-28T01:56:55.938781" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:55.938593" elapsed="0.000283"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:55.937844" elapsed="0.001054"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.946336" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba430&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-07-28T01:56:55.943912" elapsed="0.002453"/>
</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-07-28T01:56:55.947023" elapsed="0.000341"/>
</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-07-28T01:56:55.946590" elapsed="0.000829"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.948051" 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-07-28T01:56:55.947715" 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-07-28T01:56:55.948271" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.948500" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.943383" elapsed="0.005251"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:55.979909" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb330&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-07-28T01:56:55.977713" 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-07-28T01:56:55.980129" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.981097" 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-07-28T01:56:55.980778" 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-07-28T01:56:55.981315" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:55.984046" 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-07-28T01:56:55.981684" elapsed="0.002413"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.984142" 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 0x7868a37d6510&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-07-28T01:56:55.977214" elapsed="0.007053"/>
</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-07-28T01:56:55.984481" elapsed="0.000227"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.984759" 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-07-28T01:56:55.937536" elapsed="0.047344"/>
</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-07-28T01:56:55.992323" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b90d0&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-07-28T01:56:55.989988" elapsed="0.002363"/>
</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-07-28T01:56:55.992994" elapsed="0.000342"/>
</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-07-28T01:56:55.992569" elapsed="0.000823"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:55.993963" 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-07-28T01:56:55.993599" 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-07-28T01:56:55.994182" elapsed="0.000160"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.994494" elapsed="0.000032"/>
</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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:55.989573" elapsed="0.005053"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:55.994674" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:55.985093" elapsed="0.009698"/>
</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-07-28T01:56:56.005048" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb4c0&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-07-28T01:56:56.002695" elapsed="0.002381"/>
</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-07-28T01:56:56.005763" 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-07-28T01:56:56.005321" elapsed="0.000799"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.006732" 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-07-28T01:56:56.006354" 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-07-28T01:56:56.006987" elapsed="0.000164"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.007201" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:56.002267" elapsed="0.005055"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.043699" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bacf0&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-07-28T01:56:56.041261" elapsed="0.002467"/>
</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-07-28T01:56:56.043959" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.045022" 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-07-28T01:56:56.044654" 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-07-28T01:56:56.045280" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.048021" 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-07-28T01:56:56.045686" elapsed="0.002444"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.048180" elapsed="0.000031"/>
</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 0x7868a37d6510&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-07-28T01:56:56.038814" elapsed="0.009494"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.083102" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9df0&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-07-28T01:56:56.080720" elapsed="0.002410"/>
</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-07-28T01:56:56.083364" elapsed="0.000561"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.084522" 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-07-28T01:56:56.084131" elapsed="0.000422"/>
</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-07-28T01:56:56.084746" elapsed="0.000200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.087556" 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-07-28T01:56:56.085173" elapsed="0.002435"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.087652" 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 0x7868a37d6510&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-07-28T01:56:56.080185" elapsed="0.007675"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.124062" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b96c0&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-07-28T01:56:56.121537" elapsed="0.002554"/>
</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-07-28T01:56:56.124286" elapsed="0.000516"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.125381" 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-07-28T01:56:56.125044" 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-07-28T01:56:56.125656" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.128355" 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-07-28T01:56:56.126012" elapsed="0.002397"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.128467" elapsed="0.000032"/>
</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 0x7868a37d6510&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-07-28T01:56:56.119084" elapsed="0.009513"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.166300" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a7010&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-07-28T01:56:56.163833" elapsed="0.002499"/>
</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-07-28T01:56:56.166547" elapsed="0.000527"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.167755" 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-07-28T01:56:56.167276" elapsed="0.000510"/>
</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-07-28T01:56:56.167975" elapsed="0.000201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.170751" 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-07-28T01:56:56.168366" elapsed="0.002437"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.170848" elapsed="0.000034"/>
</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 0x7868a37d6510&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-07-28T01:56:56.159860" elapsed="0.011121"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.205136" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a67a0&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-07-28T01:56:56.202699" elapsed="0.002465"/>
</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-07-28T01:56:56.205397" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.206491" 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-07-28T01:56:56.206132" 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-07-28T01:56:56.206750" elapsed="0.000200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.209555" 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-07-28T01:56:56.207188" elapsed="0.002458"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.209692" 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 0x7868a37d6510&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-07-28T01:56:56.202173" elapsed="0.007644"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.243931" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a7790&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-07-28T01:56:56.241548" 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-07-28T01:56:56.244189" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.245275" 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-07-28T01:56:56.244890" elapsed="0.000415"/>
</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-07-28T01:56:56.245545" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.248323" 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-07-28T01:56:56.245973" elapsed="0.002402"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.248468" elapsed="0.000033"/>
</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 0x7868a37d6510&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-07-28T01:56:56.240970" elapsed="0.007632"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.248656" 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-07-28T01:56:55.995519" elapsed="0.253254"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.283107" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b05f1c60&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-07-28T01:56:56.280738" elapsed="0.002441"/>
</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-07-28T01:56:56.283377" elapsed="0.000552"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.284534" 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-07-28T01:56:56.284133" 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-07-28T01:56:56.284797" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.287551" 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-07-28T01:56:56.285186" elapsed="0.002419"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.287649" 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 0x7868a37d6510&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-07-28T01:56:56.280178" elapsed="0.007598"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.287830" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:56:55.995012" elapsed="0.292971"/>
</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-07-28T01:56:56.300155" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9df0&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-07-28T01:56:56.297790" elapsed="0.002393"/>
</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-07-28T01:56:56.300837" elapsed="0.000349"/>
</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-07-28T01:56:56.300429" elapsed="0.000811"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.301839" 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-07-28T01:56:56.301434" elapsed="0.000435"/>
</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-07-28T01:56:56.302061" elapsed="0.000201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.302312" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:56.297323" elapsed="0.005112"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.302498" elapsed="0.000059"/>
</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 0x7868a37d6510&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:56.292791" elapsed="0.009862"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.337898" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f663e0&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-07-28T01:56:56.335287" elapsed="0.002640"/>
</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-07-28T01:56:56.338125" elapsed="0.000531"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.339248" 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-07-28T01:56:56.338861" 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-07-28T01:56:56.339500" elapsed="0.000201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.342252" 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-07-28T01:56:56.339894" elapsed="0.002411"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.342349" elapsed="0.000028"/>
</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 0x7868a37d6510&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-07-28T01:56:56.332901" elapsed="0.009587"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:56.342929" 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-07-28T01:56:56.342735" elapsed="0.000219"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.378579" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b1fc08b0&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-07-28T01:56:56.376099" 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-07-28T01:56:56.378805" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.379984" 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-07-28T01:56:56.379580" elapsed="0.000436"/>
</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-07-28T01:56:56.380209" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.382945" 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-07-28T01:56:56.380581" elapsed="0.002471"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.383099" elapsed="0.000032"/>
</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 0x7868a37d6510&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-07-28T01:56:56.373666" elapsed="0.009602"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.417005" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb8d0&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-07-28T01:56:56.414483" elapsed="0.002550"/>
</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-07-28T01:56:56.417267" elapsed="0.000535"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.418440" 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-07-28T01:56:56.418043" elapsed="0.000443"/>
</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-07-28T01:56:56.418715" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.421597" 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-07-28T01:56:56.419105" elapsed="0.002547"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.421696" elapsed="0.000066"/>
</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 0x7868a37d6510&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-07-28T01:56:56.413928" elapsed="0.007935"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:56.422300" 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-07-28T01:56:56.422109" elapsed="0.000252"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.459130" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f570b0&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-07-28T01:56:56.456684" elapsed="0.002475"/>
</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-07-28T01:56:56.459382" elapsed="0.000540"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.460543" 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-07-28T01:56:56.460127" elapsed="0.000448"/>
</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-07-28T01:56:56.460766" elapsed="0.000202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.463569" 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-07-28T01:56:56.461195" elapsed="0.002430"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.463669" 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 0x7868a37d6510&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-07-28T01:56:56.454125" elapsed="0.009670"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.497429" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f576a0&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-07-28T01:56:56.495012" elapsed="0.002459"/>
</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-07-28T01:56:56.497675" elapsed="0.000517"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.498836" 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-07-28T01:56:56.498399" elapsed="0.000470"/>
</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-07-28T01:56:56.499063" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.502360" 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-07-28T01:56:56.499528" elapsed="0.002890"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.502479" elapsed="0.000072"/>
</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 0x7868a37d6510&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-07-28T01:56:56.494485" elapsed="0.008171"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:56.503113" 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-07-28T01:56:56.502877" elapsed="0.000263"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.538952" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f54810&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-07-28T01:56:56.536562" elapsed="0.002419"/>
</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-07-28T01:56:56.539215" elapsed="0.000537"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.540362" 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-07-28T01:56:56.539957" elapsed="0.000436"/>
</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-07-28T01:56:56.540637" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.543553" 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-07-28T01:56:56.541033" elapsed="0.002579"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.543656" 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 0x7868a37d6510&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-07-28T01:56:56.534160" elapsed="0.009622"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.577848" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bab60&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-07-28T01:56:56.575391" elapsed="0.002487"/>
</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-07-28T01:56:56.578115" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.579239" 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-07-28T01:56:56.578821" elapsed="0.000532"/>
</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-07-28T01:56:56.579564" elapsed="0.000207"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.582325" 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-07-28T01:56:56.579965" elapsed="0.002417"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.582427" elapsed="0.000081"/>
</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 0x7868a37d6510&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-07-28T01:56:56.574831" elapsed="0.007783"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.582669" 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-07-28T01:56:56.292342" elapsed="0.290447"/>
</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-07-28T01:56:56.595144" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55cb0&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-07-28T01:56:56.592758" elapsed="0.002414"/>
</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-07-28T01:56:56.595902" 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-07-28T01:56:56.595449" elapsed="0.000823"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.596888" 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-07-28T01:56:56.596516" 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-07-28T01:56:56.597148" elapsed="0.000167"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.597365" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:56.592284" elapsed="0.005259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.597593" elapsed="0.000027"/>
</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 0x7868a37d6510&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:56.587688" elapsed="0.010023"/>
</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-07-28T01:56:56.605605" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f56750&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-07-28T01:56:56.603203" elapsed="0.002430"/>
</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-07-28T01:56:56.606274" 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-07-28T01:56:56.605840" elapsed="0.000813"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.607273" 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-07-28T01:56:56.606849" elapsed="0.000456"/>
</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-07-28T01:56:56.607512" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.607724" 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 0x7868a37d6510&gt;
object. The &lt;FlowLib.Flow object at 0x7868a37d6510&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:56.602754" elapsed="0.005093"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.607894" 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 0x7868a37d6510&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:56.597965" elapsed="0.010083"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:56.608492" 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-07-28T01:56:56.608249" elapsed="0.000273"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.641970" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f54d60&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-07-28T01:56:56.639557" elapsed="0.002442"/>
</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-07-28T01:56:56.642194" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.643398" 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-07-28T01:56:56.642962" elapsed="0.000467"/>
</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-07-28T01:56:56.643638" elapsed="0.000205"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.646415" 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-07-28T01:56:56.644041" elapsed="0.002447"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.646533" 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 0x7868a37d6510&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-07-28T01:56:56.639013" elapsed="0.007647"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:56.647050" 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-07-28T01:56:56.646866" elapsed="0.000247"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:56.680066" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb240&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-07-28T01:56:56.677640" elapsed="0.002456"/>
</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-07-28T01:56:56.680290" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:56.681406" 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-07-28T01:56:56.680992" elapsed="0.000444"/>
</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-07-28T01:56:56.681645" elapsed="0.000210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.684575" 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-07-28T01:56:56.682050" elapsed="0.002586"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.684679" 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 0x7868a37d6510&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-07-28T01:56:56.677120" elapsed="0.007686"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:56.684860" 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-07-28T01:56:56.587176" elapsed="0.097799"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.687618" 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-07-28T01:56:56.685251" elapsed="0.002426"/>
</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-07-28T01:56:56.687874" elapsed="0.002493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.692791" 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-07-28T01:56:56.690584" elapsed="0.002292"/>
</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-07-28T01:56:56.696264" elapsed="0.002182"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.693929" elapsed="0.004569"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.693907" elapsed="0.004619"/>
</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-07-28T01:56:56.700851" elapsed="0.002392"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.698618" elapsed="0.004665"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.698567" elapsed="0.004776"/>
</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-07-28T01:56:56.705688" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.703405" elapsed="0.002340"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.703388" elapsed="0.002381"/>
</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-07-28T01:56:56.708124" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.705824" elapsed="0.002360"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.705809" elapsed="0.002399"/>
</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-07-28T01:56:56.693682" elapsed="0.014573"/>
</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-07-28T01:56:56.711035" elapsed="0.000134"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.708783" elapsed="0.002481"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.708765" elapsed="0.002524"/>
</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-07-28T01:56:56.713620" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.711345" elapsed="0.002331"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.711328" elapsed="0.002372"/>
</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-07-28T01:56:56.708546" elapsed="0.005200"/>
</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-07-28T01:56:56.718677" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:56:56.746854" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:56.747224" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:56.718542" elapsed="0.028747"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.716235" elapsed="0.031151"/>
</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-07-28T01:56:56.748122" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.747448" elapsed="0.000819"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.716216" elapsed="0.032104"/>
</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-07-28T01:56:56.754060" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.748483" elapsed="0.005714"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.755676" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:56.754761" elapsed="0.000962"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.754250" elapsed="0.001575"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.748416" elapsed="0.007442"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:56.755974" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:56:56.756291" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:56.714085" elapsed="0.042245"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.759945" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:56.756674" elapsed="0.003336"/>
</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-07-28T01:56:56.760330" elapsed="0.000468"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:56:56.760866" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:56:56.764106" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:56:56.693099" elapsed="0.071045"/>
</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-07-28T01:56:56.782356" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:56:56.782418" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:56.782551" 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-07-28T01:56:56.772913" elapsed="0.009666"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.785282" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:56.782849" elapsed="0.002477"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:56.789663" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:56.789999" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:56.790222" 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-07-28T01:56:56.785541" elapsed="0.004719"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.794224" 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-07-28T01:56:56.790615" elapsed="0.003692"/>
</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-07-28T01:56:56.794726" elapsed="0.003605"/>
</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-07-28T01:56:56.765351" elapsed="0.033073"/>
</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-07-28T01:56:56.764514" elapsed="0.034010"/>
</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-07-28T01:56:56.816709" elapsed="0.002090"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.814432" elapsed="0.004406"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.814409" elapsed="0.004456"/>
</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-07-28T01:56:56.821241" elapsed="0.002300"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.818920" elapsed="0.004666"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.818903" elapsed="0.004708"/>
</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-07-28T01:56:56.825801" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.823666" elapsed="0.002197"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.823650" elapsed="0.002243"/>
</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-07-28T01:56:56.828146" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.825949" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.825933" elapsed="0.002296"/>
</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-07-28T01:56:56.814140" elapsed="0.014138"/>
</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-07-28T01:56:56.830970" elapsed="0.000127"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.828785" elapsed="0.002367"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.828768" elapsed="0.002419"/>
</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-07-28T01:56:56.833392" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.831248" elapsed="0.002200"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.831232" elapsed="0.002256"/>
</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-07-28T01:56:56.828544" elapsed="0.004992"/>
</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-07-28T01:56:56.836599" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:56.849654" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:56.849879" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:56.836431" elapsed="0.013525"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.834102" elapsed="0.015940"/>
</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-07-28T01:56:56.850606" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.850101" elapsed="0.000639"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.834084" elapsed="0.016704"/>
</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-07-28T01:56:56.855846" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.850941" elapsed="0.004994"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.856686" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:56.856224" elapsed="0.000503"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.855968" elapsed="0.000810"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.850903" elapsed="0.005905"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:56.856861" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:56:56.857100" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:56.833844" elapsed="0.023294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.857798" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17152  bytes 219419498 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9470  bytes 1684862 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:56.857409" elapsed="0.000529"/>
</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-07-28T01:56:56.862030" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:56.922905" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:56.923161" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.818s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.132s, 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-07-28T01:56:56.861834" elapsed="0.061390"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.858787" elapsed="0.064524"/>
</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-07-28T01:56:56.923853" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.923367" elapsed="0.000617"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.858760" elapsed="0.065273"/>
</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-07-28T01:56:56.928968" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.924159" elapsed="0.004943"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.930259" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.818s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.132s, 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-07-28T01:56:56.929596" elapsed="0.000724"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.929156" elapsed="0.001245"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.924124" elapsed="0.006326"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:56.930560" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:56:56.930905" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.818s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.132s, 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-07-28T01:56:56.858351" elapsed="0.072613"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.931837" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.818s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.132s, 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-07-28T01:56:56.931480" elapsed="0.000404"/>
</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-07-28T01:56:56.932475" elapsed="0.000530"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.932198" elapsed="0.000847"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.932183" elapsed="0.000886"/>
</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-07-28T01:56:56.933384" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.933123" elapsed="0.000318"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.933107" elapsed="0.000372"/>
</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-07-28T01:56:56.932149" elapsed="0.001354"/>
</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-07-28T01:56:56.933949" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.933694" elapsed="0.000610"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.933680" elapsed="0.000647"/>
</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-07-28T01:56:56.934656" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.934380" elapsed="0.000334"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.934364" elapsed="0.000372"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:56.933651" elapsed="0.001107"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:56.931942" elapsed="0.002844"/>
</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-07-28T01:56:56.809466" elapsed="0.125375"/>
</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-07-28T01:56:56.798886" elapsed="0.136009"/>
</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-07-28T01:56:56.946625" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:56.946671" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:56.946816" 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-07-28T01:56:56.940197" elapsed="0.006646"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:56.949541" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:56.947061" elapsed="0.002528"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:56.953707" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=261?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:56.953952" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:56.954098" 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-07-28T01:56:56.949757" elapsed="0.004378"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:56:56.960341" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:56:56.954249" elapsed="0.006179"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.954221" elapsed="0.006262"/>
</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-07-28T01:56:56.960749" 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-07-28T01:56:56.960994" 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-07-28T01:56:56.935735" elapsed="0.025385"/>
</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-07-28T01:56:56.935136" elapsed="0.026057"/>
</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-07-28T01:56:56.980008" elapsed="0.002153"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.976804" elapsed="0.005413"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.976785" elapsed="0.005458"/>
</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-07-28T01:56:56.984514" elapsed="0.002301"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.982308" elapsed="0.004551"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.982291" elapsed="0.004592"/>
</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-07-28T01:56:56.989133" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.986938" elapsed="0.002254"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.986922" elapsed="0.002293"/>
</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-07-28T01:56:56.991544" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.989270" elapsed="0.002336"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.989255" elapsed="0.002375"/>
</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-07-28T01:56:56.976565" elapsed="0.015159"/>
</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-07-28T01:56:56.994570" elapsed="0.000137"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.992244" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.992226" elapsed="0.002540"/>
</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-07-28T01:56:56.997113" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:56.994820" elapsed="0.002348"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.994804" elapsed="0.002387"/>
</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-07-28T01:56:56.991992" elapsed="0.005245"/>
</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-07-28T01:56:57.000361" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:57.013524" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:57.013658" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:57.000182" elapsed="0.013595"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:56.997873" elapsed="0.015945"/>
</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-07-28T01:56:57.014097" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.013843" elapsed="0.000314"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:56.997855" elapsed="0.016324"/>
</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-07-28T01:56:57.016585" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.014235" elapsed="0.002415"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.017270" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:57.016892" elapsed="0.000407"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.016674" elapsed="0.000662"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.014219" elapsed="0.003138"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:57.017395" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:57.017614" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:56.997576" elapsed="0.020067"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.018126" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17164  bytes 219420938 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9485  bytes 1688300 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:57.017838" elapsed="0.000347"/>
</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-07-28T01:56:57.021441" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:57.072808" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:57.073128" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.968s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:57.021310" elapsed="0.051886"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.018830" elapsed="0.054463"/>
</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-07-28T01:56:57.073973" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.073356" elapsed="0.000760"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.018777" elapsed="0.055389"/>
</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-07-28T01:56:57.080168" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.074307" elapsed="0.006004"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.081751" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.968s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:57.080907" elapsed="0.000976"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.080366" elapsed="0.001613"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.074269" elapsed="0.007762"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:57.082115" elapsed="0.000075"/>
</return>
<msg time="2026-07-28T01:56:57.082656" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.968s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:57.018517" elapsed="0.064208"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.083781" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=6.968s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:57.083312" elapsed="0.000516"/>
</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-07-28T01:56:57.084420" elapsed="0.000074"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.084152" elapsed="0.000382"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.084138" elapsed="0.000420"/>
</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-07-28T01:56:57.084968" elapsed="0.000389"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.084665" elapsed="0.000732"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.084649" elapsed="0.000772"/>
</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-07-28T01:56:57.084105" elapsed="0.001339"/>
</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-07-28T01:56:57.085953" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.085692" elapsed="0.000320"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.085678" elapsed="0.000357"/>
</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-07-28T01:56:57.086383" elapsed="0.000384"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.086122" elapsed="0.000687"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.086072" elapsed="0.000760"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:57.085647" elapsed="0.001208"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:57.083890" elapsed="0.002993"/>
</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-07-28T01:56:56.972064" elapsed="0.114875"/>
</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-07-28T01:56:56.961507" elapsed="0.125489"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>261</arg>
<arg>65535</arg>
<status status="PASS" start="2026-07-28T01:56:55.823590" elapsed="1.263487"/>
</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-07-28T01:56:55.822832" elapsed="1.264380"/>
</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-07-28T01:56:57.089294" 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-07-28T01:56:57.088809" elapsed="0.000513"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.090072" 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-07-28T01:56:57.089584" elapsed="0.000516"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:56:57.090859" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868b04a3f90&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:56:57.090680" elapsed="0.000208"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.090930" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:56:57.091124" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868b04a3f90&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-07-28T01:56:57.090325" elapsed="0.000825"/>
</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-07-28T01:56:57.096493" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.096107" elapsed="0.000453"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.097106" 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-07-28T01:56:57.096769" elapsed="0.000398"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.096584" elapsed="0.000622"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.096090" elapsed="0.001138"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.104894" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812ac0&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-07-28T01:56:57.102375" elapsed="0.002548"/>
</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-07-28T01:56:57.105629" elapsed="0.000342"/>
</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-07-28T01:56:57.105134" elapsed="0.000893"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.106624" 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-07-28T01:56:57.106225" elapsed="0.000429"/>
</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-07-28T01:56:57.106884" elapsed="0.000251"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.107186" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.101926" elapsed="0.005384"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.145031" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38105e0&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-07-28T01:56:57.142710" elapsed="0.002351"/>
</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-07-28T01:56:57.145259" elapsed="0.000471"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.146287" 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-07-28T01:56:57.145948" 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-07-28T01:56:57.146526" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.149162" 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-07-28T01:56:57.146896" elapsed="0.002315"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.149255" 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 0x7868b04a3f90&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-07-28T01:56:57.142187" elapsed="0.007197"/>
</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-07-28T01:56:57.149611" elapsed="0.000201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.149863" 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-07-28T01:56:57.095804" elapsed="0.054180"/>
</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-07-28T01:56:57.155177" 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-07-28T01:56:57.154913" elapsed="0.000291"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.154615" elapsed="0.000631"/>
</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-07-28T01:56:57.155488" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.155270" elapsed="0.000278"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.154597" elapsed="0.000972"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.162434" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38139c0&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-07-28T01:56:57.160190" 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-07-28T01:56:57.163112" 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-07-28T01:56:57.162685" elapsed="0.000816"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.164040" 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-07-28T01:56:57.163708" 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-07-28T01:56:57.164259" elapsed="0.000171"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.164498" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.159774" elapsed="0.004848"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.203858" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f54d60&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-07-28T01:56:57.201350" elapsed="0.002540"/>
</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-07-28T01:56:57.204094" elapsed="0.000533"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.205208" 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-07-28T01:56:57.204832" 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-07-28T01:56:57.205527" elapsed="0.000206"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.208305" 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-07-28T01:56:57.205926" elapsed="0.002429"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.208403" elapsed="0.000036"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.200729" elapsed="0.007826"/>
</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-07-28T01:56:57.208793" elapsed="0.000187"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.209029" 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-07-28T01:56:57.154288" elapsed="0.054901"/>
</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-07-28T01:56:57.214549" 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-07-28T01:56:57.214311" elapsed="0.000301"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.213971" elapsed="0.000685"/>
</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-07-28T01:56:57.214869" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.214682" elapsed="0.000243"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.213951" elapsed="0.000995"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.222154" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f56c00&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-07-28T01:56:57.219813" elapsed="0.002369"/>
</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-07-28T01:56:57.222846" elapsed="0.000352"/>
</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-07-28T01:56:57.222392" elapsed="0.000861"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.223820" 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-07-28T01:56:57.223444" 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-07-28T01:56:57.224039" elapsed="0.000164"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.224251" elapsed="0.000066"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.219352" elapsed="0.005063"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.258150" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f56750&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-07-28T01:56:57.255743" elapsed="0.002436"/>
</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-07-28T01:56:57.258372" elapsed="0.000603"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.259563" 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-07-28T01:56:57.259180" elapsed="0.000474"/>
</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-07-28T01:56:57.259858" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.262810" 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-07-28T01:56:57.260255" elapsed="0.002606"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.262904" 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 0x7868b04a3f90&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-07-28T01:56:57.255237" elapsed="0.007811"/>
</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-07-28T01:56:57.263330" elapsed="0.000208"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.263633" elapsed="0.000029"/>
</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-07-28T01:56:57.213670" elapsed="0.050088"/>
</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-07-28T01:56:57.271302" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f57650&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-07-28T01:56:57.268925" elapsed="0.002405"/>
</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-07-28T01:56:57.271973" elapsed="0.000347"/>
</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-07-28T01:56:57.271587" elapsed="0.000788"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.272947" 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-07-28T01:56:57.272620" 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-07-28T01:56:57.273208" elapsed="0.000164"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.273422" elapsed="0.000075"/>
</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 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.268510" elapsed="0.005090"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.273647" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:57.264009" elapsed="0.009755"/>
</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-07-28T01:56:57.284085" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01baf70&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-07-28T01:56:57.281681" elapsed="0.002434"/>
</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-07-28T01:56:57.284768" elapsed="0.000342"/>
</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-07-28T01:56:57.284321" elapsed="0.000844"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.285780" 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-07-28T01:56:57.285392" elapsed="0.000420"/>
</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-07-28T01:56:57.286005" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.286255" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.281247" elapsed="0.005133"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.322572" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b81d0&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-07-28T01:56:57.320185" elapsed="0.002416"/>
</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-07-28T01:56:57.322833" elapsed="0.000503"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.323922" 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-07-28T01:56:57.323591" 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-07-28T01:56:57.324143" elapsed="0.000202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.326974" 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-07-28T01:56:57.324556" elapsed="0.002472"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.327072" 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 0x7868b04a3f90&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-07-28T01:56:57.317781" elapsed="0.009421"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.361406" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb240&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-07-28T01:56:57.359042" elapsed="0.002392"/>
</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-07-28T01:56:57.361643" elapsed="0.000479"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.362716" 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-07-28T01:56:57.362323" elapsed="0.000424"/>
</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-07-28T01:56:57.362994" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.365726" 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-07-28T01:56:57.363385" elapsed="0.002432"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.365862" 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 0x7868b04a3f90&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-07-28T01:56:57.358504" elapsed="0.007485"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.401214" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb920&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-07-28T01:56:57.398983" elapsed="0.002307"/>
</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-07-28T01:56:57.401502" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.402500" 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-07-28T01:56:57.402147" elapsed="0.000384"/>
</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-07-28T01:56:57.402761" elapsed="0.000181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.405501" 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-07-28T01:56:57.403174" elapsed="0.002379"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.405599" elapsed="0.000068"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.396710" elapsed="0.009061"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.441986" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a5120&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-07-28T01:56:57.439574" elapsed="0.002440"/>
</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-07-28T01:56:57.442210" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.443384" 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-07-28T01:56:57.442995" elapsed="0.000420"/>
</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-07-28T01:56:57.443626" elapsed="0.000212"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.446399" 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-07-28T01:56:57.444032" elapsed="0.002432"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.446510" 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 0x7868b04a3f90&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-07-28T01:56:57.436946" elapsed="0.009766"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.480683" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a6750&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-07-28T01:56:57.478253" elapsed="0.002458"/>
</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-07-28T01:56:57.480906" elapsed="0.000518"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.482026" 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-07-28T01:56:57.481677" 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-07-28T01:56:57.482285" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.485062" 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-07-28T01:56:57.482693" elapsed="0.002423"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.485160" elapsed="0.000031"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.477735" elapsed="0.007553"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.519695" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a7ce0&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-07-28T01:56:57.517267" elapsed="0.002456"/>
</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-07-28T01:56:57.519918" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.521005" 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-07-28T01:56:57.520657" 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-07-28T01:56:57.521268" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.524044" 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-07-28T01:56:57.521676" elapsed="0.002420"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.524140" 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 0x7868b04a3f90&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-07-28T01:56:57.516694" elapsed="0.007572"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.524321" elapsed="0.000064"/>
</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-07-28T01:56:57.274434" elapsed="0.250064"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.558469" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba250&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-07-28T01:56:57.556085" elapsed="0.002414"/>
</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-07-28T01:56:57.558732" elapsed="0.000502"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.559845" 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-07-28T01:56:57.559438" elapsed="0.000515"/>
</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-07-28T01:56:57.560147" elapsed="0.000203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.562928" 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-07-28T01:56:57.560559" elapsed="0.002424"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.563027" 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 0x7868b04a3f90&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-07-28T01:56:57.555506" elapsed="0.007650"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.563210" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:56:57.273946" elapsed="0.289382"/>
</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-07-28T01:56:57.575569" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f54810&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-07-28T01:56:57.573018" 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-07-28T01:56:57.576262" 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-07-28T01:56:57.575821" elapsed="0.000824"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.577189" 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-07-28T01:56:57.576838" 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-07-28T01:56:57.577448" elapsed="0.000187"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.577685" elapsed="0.000030"/>
</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 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.572599" elapsed="0.005211"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.577856" 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 0x7868b04a3f90&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:57.568325" elapsed="0.009647"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.613773" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a6cf0&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-07-28T01:56:57.611099" elapsed="0.002706"/>
</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-07-28T01:56:57.614004" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.615141" 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-07-28T01:56:57.614707" elapsed="0.000465"/>
</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-07-28T01:56:57.615403" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.618173" 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-07-28T01:56:57.615782" elapsed="0.002445"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.618272" elapsed="0.000035"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.608645" elapsed="0.009802"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:57.619037" 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-07-28T01:56:57.618802" elapsed="0.000262"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.654537" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b0323240&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-07-28T01:56:57.652101" elapsed="0.002465"/>
</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-07-28T01:56:57.654829" elapsed="0.000493"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.655947" 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-07-28T01:56:57.655547" elapsed="0.000465"/>
</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-07-28T01:56:57.656210" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.658971" 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-07-28T01:56:57.656616" elapsed="0.002411"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.659071" 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 0x7868b04a3f90&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-07-28T01:56:57.649712" elapsed="0.009531"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.692871" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b03a5b70&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-07-28T01:56:57.690416" elapsed="0.002483"/>
</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-07-28T01:56:57.693094" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.694224" 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-07-28T01:56:57.693828" 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-07-28T01:56:57.694497" elapsed="0.000171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.697233" 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-07-28T01:56:57.694910" elapsed="0.002379"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.697332" elapsed="0.000063"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.689908" elapsed="0.007604"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:57.697945" 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-07-28T01:56:57.697721" elapsed="0.000251"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.733192" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba250&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-07-28T01:56:57.730875" elapsed="0.002347"/>
</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-07-28T01:56:57.733421" elapsed="0.000477"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.734518" 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-07-28T01:56:57.734117" elapsed="0.000474"/>
</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-07-28T01:56:57.734836" elapsed="0.000182"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.737492" 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-07-28T01:56:57.735213" elapsed="0.002337"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.737595" elapsed="0.000030"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.728557" elapsed="0.009168"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.772998" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb740&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-07-28T01:56:57.770122" elapsed="0.002913"/>
</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-07-28T01:56:57.773296" elapsed="0.000589"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.774661" 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-07-28T01:56:57.774158" elapsed="0.000562"/>
</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-07-28T01:56:57.774977" elapsed="0.000203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.778247" 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-07-28T01:56:57.775434" elapsed="0.002891"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.778381" elapsed="0.000041"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.769523" elapsed="0.009045"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:57.779118" 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-07-28T01:56:57.778870" elapsed="0.000285"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.814288" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9e40&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-07-28T01:56:57.811949" elapsed="0.002370"/>
</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-07-28T01:56:57.814533" elapsed="0.000546"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.815765" 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-07-28T01:56:57.815325" elapsed="0.000471"/>
</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-07-28T01:56:57.816021" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.818984" 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-07-28T01:56:57.816377" elapsed="0.002722"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.819146" elapsed="0.000034"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.809522" elapsed="0.009759"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.852750" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b1f1d4e0&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-07-28T01:56:57.850351" elapsed="0.002427"/>
</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-07-28T01:56:57.853010" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.854196" 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-07-28T01:56:57.853753" elapsed="0.000474"/>
</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-07-28T01:56:57.854421" elapsed="0.000216"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.857184" 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-07-28T01:56:57.854847" elapsed="0.002431"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.857324" elapsed="0.000031"/>
</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 0x7868b04a3f90&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-07-28T01:56:57.849846" elapsed="0.007620"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.857523" elapsed="0.000027"/>
</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-07-28T01:56:57.567729" elapsed="0.289951"/>
</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-07-28T01:56:57.869762" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bbfb0&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-07-28T01:56:57.867402" elapsed="0.002388"/>
</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-07-28T01:56:57.870487" elapsed="0.000360"/>
</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-07-28T01:56:57.870041" elapsed="0.000863"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.871517" 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-07-28T01:56:57.871098" 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-07-28T01:56:57.871776" elapsed="0.000165"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.871990" 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 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.866983" elapsed="0.005130"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.872160" elapsed="0.000061"/>
</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 0x7868b04a3f90&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:57.862443" elapsed="0.009872"/>
</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-07-28T01:56:57.880123" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb790&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-07-28T01:56:57.877734" elapsed="0.002417"/>
</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-07-28T01:56:57.880876" elapsed="0.000342"/>
</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-07-28T01:56:57.880431" elapsed="0.000842"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.881926" 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-07-28T01:56:57.881520" elapsed="0.000437"/>
</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-07-28T01:56:57.882152" elapsed="0.000197"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.882400" 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 0x7868b04a3f90&gt;
object. The &lt;FlowLib.Flow object at 0x7868b04a3f90&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:57.877272" elapsed="0.005267"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.882623" elapsed="0.000042"/>
</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 0x7868b04a3f90&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:57.872548" elapsed="0.010210"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:57.883181" 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-07-28T01:56:57.882957" elapsed="0.000250"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.915488" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb8d0&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-07-28T01:56:57.913226" elapsed="0.002291"/>
</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-07-28T01:56:57.915714" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.916737" 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-07-28T01:56:57.916349" 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-07-28T01:56:57.916961" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.919523" 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-07-28T01:56:57.917313" elapsed="0.002268"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.919625" 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 0x7868b04a3f90&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-07-28T01:56:57.912756" elapsed="0.006993"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:57.920140" 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-07-28T01:56:57.919955" elapsed="0.000211"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:57.956611" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38138d0&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-07-28T01:56:57.953650" elapsed="0.002989"/>
</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-07-28T01:56:57.956902" elapsed="0.000525"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:57.958250" 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-07-28T01:56:57.957714" elapsed="0.000577"/>
</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-07-28T01:56:57.958535" elapsed="0.000266"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.961698" 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-07-28T01:56:57.959027" elapsed="0.002812"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.961892" 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 0x7868b04a3f90&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-07-28T01:56:57.953005" elapsed="0.009034"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:57.962100" elapsed="0.000027"/>
</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-07-28T01:56:57.861974" elapsed="0.100292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.965079" 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-07-28T01:56:57.962493" elapsed="0.002655"/>
</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-07-28T01:56:57.965391" elapsed="0.002540"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:57.970462" 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-07-28T01:56:57.968148" elapsed="0.002406"/>
</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-07-28T01:56:57.974082" elapsed="0.002277"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.971662" elapsed="0.004736"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.971629" elapsed="0.004795"/>
</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-07-28T01:56:57.978918" elapsed="0.002461"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.976504" elapsed="0.004924"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.976486" elapsed="0.004980"/>
</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-07-28T01:56:57.983863" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.981525" elapsed="0.002403"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.981508" elapsed="0.002444"/>
</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-07-28T01:56:57.986259" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.984007" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.983991" elapsed="0.002350"/>
</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-07-28T01:56:57.971375" elapsed="0.015013"/>
</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-07-28T01:56:57.989173" elapsed="0.000131"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.986949" elapsed="0.002388"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.986931" elapsed="0.002430"/>
</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-07-28T01:56:57.991660" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:57.989415" elapsed="0.002297"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.989399" 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-07-28T01:56:57.986708" elapsed="0.005109"/>
</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-07-28T01:56:57.996817" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:56:58.010106" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:58.010216" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:57.996590" elapsed="0.013684"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:57.994239" elapsed="0.016079"/>
</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-07-28T01:56:58.010641" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.010352" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:57.994213" elapsed="0.016520"/>
</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-07-28T01:56:58.013240" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.010798" elapsed="0.002510"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.013937" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:58.013592" elapsed="0.000372"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.013333" elapsed="0.000673"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.010781" elapsed="0.003248"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:58.014065" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:56:58.014271" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:57.992106" elapsed="0.022199"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.017028" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:58.014595" elapsed="0.002487"/>
</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-07-28T01:56:58.017328" elapsed="0.000329"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:56:58.017713" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:56:58.020281" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:56:57.970799" elapsed="0.049519"/>
</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-07-28T01:56:58.037428" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:56:58.037510" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:58.037627" 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-07-28T01:56:58.028088" elapsed="0.009567"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.040243" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:58.037867" elapsed="0.002420"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:58.045262" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:58.045554" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:58.045773" 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-07-28T01:56:58.040503" elapsed="0.005298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.048527" 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-07-28T01:56:58.046005" elapsed="0.002582"/>
</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-07-28T01:56:58.048819" elapsed="0.002421"/>
</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-07-28T01:56:58.021336" elapsed="0.029969"/>
</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-07-28T01:56:58.020616" elapsed="0.030746"/>
</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-07-28T01:56:58.066911" elapsed="0.002174"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.064361" elapsed="0.004765"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.064339" elapsed="0.004814"/>
</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-07-28T01:56:58.071428" elapsed="0.002401"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.069210" elapsed="0.004660"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.069193" elapsed="0.004702"/>
</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-07-28T01:56:58.076237" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.073989" elapsed="0.002306"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.073971" elapsed="0.002348"/>
</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-07-28T01:56:58.078663" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.076372" elapsed="0.002351"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.076357" elapsed="0.002390"/>
</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-07-28T01:56:58.064112" elapsed="0.014682"/>
</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-07-28T01:56:58.081590" elapsed="0.000135"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.079356" elapsed="0.002404"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.079338" elapsed="0.002446"/>
</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-07-28T01:56:58.084238" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.081870" elapsed="0.002422"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.081822" elapsed="0.002494"/>
</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-07-28T01:56:58.079081" elapsed="0.005281"/>
</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-07-28T01:56:58.087266" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:58.100294" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:58.100571" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.087131" elapsed="0.013583"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.084927" elapsed="0.015882"/>
</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-07-28T01:56:58.101423" elapsed="0.000088"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.100870" elapsed="0.000731"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.084909" elapsed="0.016745"/>
</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-07-28T01:56:58.107687" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.101863" elapsed="0.005970"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.109445" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.108613" elapsed="0.000936"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.108055" elapsed="0.001585"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.101823" elapsed="0.007872"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:58.109850" elapsed="0.000080"/>
</return>
<msg time="2026-07-28T01:56:58.110239" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.084671" elapsed="0.025635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.111732" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17181  bytes 219423060 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9508  bytes 1692514 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:58.110930" elapsed="0.000877"/>
</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-07-28T01:56:58.114927" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:58.160946" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:58.161264" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.056s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-07-28T01:56:58.114792" elapsed="0.046542"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.112484" elapsed="0.048944"/>
</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-07-28T01:56:58.162078" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.161537" elapsed="0.000745"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.112465" elapsed="0.049874"/>
</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-07-28T01:56:58.168215" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.162531" elapsed="0.005831"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.169837" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.056s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-07-28T01:56:58.169035" elapsed="0.000936"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.168520" elapsed="0.001542"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.162440" elapsed="0.007675"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:58.170198" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:56:58.170706" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.056s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-07-28T01:56:58.112166" elapsed="0.058607"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.171846" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.056s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.113s, 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-07-28T01:56:58.171308" elapsed="0.000605"/>
</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-07-28T01:56:58.172787" elapsed="0.000868"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.172394" elapsed="0.001319"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.172374" elapsed="0.001373"/>
</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-07-28T01:56:58.174190" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.173824" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.173802" elapsed="0.000501"/>
</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-07-28T01:56:58.172327" elapsed="0.002007"/>
</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-07-28T01:56:58.175155" elapsed="0.000528"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.174685" elapsed="0.001056"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.174666" elapsed="0.001110"/>
</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-07-28T01:56:58.176308" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.175854" elapsed="0.000540"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.175831" elapsed="0.000597"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:58.174623" elapsed="0.001857"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:58.171992" elapsed="0.004533"/>
</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-07-28T01:56:58.059473" elapsed="0.117132"/>
</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-07-28T01:56:58.051634" elapsed="0.125050"/>
</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-07-28T01:56:58.192748" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:58.192896" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:58.193189" 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-07-28T01:56:58.185387" elapsed="0.007870"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.199942" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:58.193900" elapsed="0.006163"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:58.208337" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=361?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:58.208584" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:58.208716" 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-07-28T01:56:58.200539" elapsed="0.008208"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:56:58.213295" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:56:58.208868" elapsed="0.004509"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.208838" elapsed="0.004567"/>
</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-07-28T01:56:58.213640" elapsed="0.000029"/>
</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-07-28T01:56:58.213828" elapsed="0.000022"/>
</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-07-28T01:56:58.177959" elapsed="0.035963"/>
</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-07-28T01:56:58.177035" elapsed="0.036945"/>
</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-07-28T01:56:58.233483" elapsed="0.002168"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.231245" elapsed="0.004468"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.231220" elapsed="0.004530"/>
</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-07-28T01:56:58.237988" elapsed="0.002334"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.235820" elapsed="0.004552"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.235802" elapsed="0.004598"/>
</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-07-28T01:56:58.242662" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.240477" elapsed="0.002332"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.240441" elapsed="0.002395"/>
</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-07-28T01:56:58.245073" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.242895" elapsed="0.002240"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.242879" elapsed="0.002282"/>
</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-07-28T01:56:58.230954" elapsed="0.014259"/>
</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-07-28T01:56:58.247913" elapsed="0.000137"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.245740" elapsed="0.002346"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.245717" elapsed="0.002395"/>
</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-07-28T01:56:58.250359" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.248168" elapsed="0.002257"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.248151" elapsed="0.002348"/>
</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-07-28T01:56:58.245489" elapsed="0.005068"/>
</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-07-28T01:56:58.253664" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:58.266637" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:58.266782" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.253519" elapsed="0.013303"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.251134" elapsed="0.015743"/>
</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-07-28T01:56:58.267220" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.266913" elapsed="0.000391"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.251116" elapsed="0.016218"/>
</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-07-28T01:56:58.270582" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.267415" elapsed="0.003258"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.271491" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.270982" elapsed="0.000554"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.270718" elapsed="0.000870"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.267392" elapsed="0.004228"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:58.271680" elapsed="0.000059"/>
</return>
<msg time="2026-07-28T01:56:58.271923" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:58.250860" elapsed="0.021103"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.272658" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17191  bytes 219424392 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9522  bytes 1695870 (1.6 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 540 (540.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-07-28T01:56:58.272255" elapsed="0.000487"/>
</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-07-28T01:56:58.276897" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:58.329436" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:58.329726" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.223s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:58.276709" elapsed="0.053083"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.273606" elapsed="0.056276"/>
</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-07-28T01:56:58.330413" elapsed="0.000211"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.329941" elapsed="0.000782"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.273579" elapsed="0.057210"/>
</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-07-28T01:56:58.336062" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.330929" elapsed="0.005277"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.337536" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.223s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:58.336747" elapsed="0.000858"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.336265" elapsed="0.001425"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.330889" elapsed="0.006853"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:58.337823" elapsed="0.000068"/>
</return>
<msg time="2026-07-28T01:56:58.338197" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.223s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:58.273164" elapsed="0.065093"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.339035" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=8.223s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:58.338754" elapsed="0.000329"/>
</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-07-28T01:56:58.339722" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.339418" elapsed="0.000370"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.339398" elapsed="0.000415"/>
</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-07-28T01:56:58.340136" elapsed="0.000370"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.339869" elapsed="0.000678"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.339853" elapsed="0.000719"/>
</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-07-28T01:56:58.339358" elapsed="0.001245"/>
</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-07-28T01:56:58.341088" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.340810" elapsed="0.000340"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.340796" elapsed="0.000378"/>
</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-07-28T01:56:58.341519" elapsed="0.000348"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.341230" elapsed="0.000680"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.341214" elapsed="0.000721"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:58.340764" elapsed="0.001195"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:58.339143" elapsed="0.002845"/>
</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-07-28T01:56:58.225272" elapsed="0.116770"/>
</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-07-28T01:56:58.214242" elapsed="0.127861"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>361</arg>
<arg>9</arg>
<status status="PASS" start="2026-07-28T01:56:57.088277" elapsed="1.253896"/>
</kw>
<doc>OF1.3 OFPP_NORMAL = 0xfffffffa, /* Process with normal L2/L3 switching. */</doc>
<tag>normal</tag>
<status status="PASS" start="2026-07-28T01:56:57.087696" elapsed="1.254613"/>
</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-07-28T01:56:58.344318" 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-07-28T01:56:58.343818" elapsed="0.000529"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.345013" 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-07-28T01:56:58.344575" elapsed="0.000466"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:56:58.345707" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:56:58.345576" elapsed="0.000157"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.345787" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:58.345946" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3fb2d50&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-07-28T01:56:58.345228" elapsed="0.000744"/>
</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-07-28T01:56:58.351373" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.351051" elapsed="0.000392"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.351994" 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-07-28T01:56:58.351685" elapsed="0.000341"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.351493" elapsed="0.000571"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.351031" elapsed="0.001056"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.359036" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f56750&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-07-28T01:56:58.356728" elapsed="0.002337"/>
</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-07-28T01:56:58.359719" 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-07-28T01:56:58.359290" elapsed="0.000801"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.360690" 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-07-28T01:56:58.360304" elapsed="0.000415"/>
</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-07-28T01:56:58.360915" elapsed="0.000179"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.361145" elapsed="0.000031"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.356290" elapsed="0.004981"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.393629" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9e40&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-07-28T01:56:58.391364" 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-07-28T01:56:58.393857" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.394889" 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-07-28T01:56:58.394557" 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-07-28T01:56:58.395111" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.397694" 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-07-28T01:56:58.395482" elapsed="0.002262"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.397790" 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 0x7868a3fb2d50&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-07-28T01:56:58.390866" elapsed="0.007053"/>
</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-07-28T01:56:58.398121" elapsed="0.000188"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.398359" elapsed="0.000029"/>
</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-07-28T01:56:58.350700" elapsed="0.047839"/>
</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-07-28T01:56:58.403601" 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-07-28T01:56:58.403355" elapsed="0.000273"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.403055" elapsed="0.000616"/>
</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-07-28T01:56:58.403886" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.403697" elapsed="0.000245"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.403037" elapsed="0.000926"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.410932" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f576a0&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-07-28T01:56:58.408658" elapsed="0.002303"/>
</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-07-28T01:56:58.411628" 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-07-28T01:56:58.411171" elapsed="0.000828"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.412545" 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-07-28T01:56:58.412195" 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-07-28T01:56:58.412769" elapsed="0.000164"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.412984" 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 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.408230" elapsed="0.004881"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.445558" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811da0&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-07-28T01:56:58.443221" elapsed="0.002367"/>
</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-07-28T01:56:58.445806" elapsed="0.000461"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.446889" 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-07-28T01:56:58.446529" 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-07-28T01:56:58.447126" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.449766" 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-07-28T01:56:58.447513" elapsed="0.002304"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.449865" 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 0x7868a3fb2d50&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-07-28T01:56:58.442616" elapsed="0.007400"/>
</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-07-28T01:56:58.450228" elapsed="0.000209"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.450508" elapsed="0.000034"/>
</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-07-28T01:56:58.402757" elapsed="0.047891"/>
</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-07-28T01:56:58.455912" 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-07-28T01:56:58.455684" elapsed="0.000257"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:58.455324" elapsed="0.000667"/>
</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-07-28T01:56:58.456208" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:58.456019" elapsed="0.000246"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:58.455304" elapsed="0.000984"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.463264" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38119e0&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-07-28T01:56:58.460975" elapsed="0.002319"/>
</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-07-28T01:56:58.463942" elapsed="0.000308"/>
</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-07-28T01:56:58.463531" elapsed="0.000784"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.464869" 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-07-28T01:56:58.464529" 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-07-28T01:56:58.465103" elapsed="0.000167"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.465329" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.460554" elapsed="0.004984"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.498061" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb7e0&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-07-28T01:56:58.495835" elapsed="0.002255"/>
</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-07-28T01:56:58.498287" elapsed="0.000494"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.499324" 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-07-28T01:56:58.498989" 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-07-28T01:56:58.499568" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.502125" 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-07-28T01:56:58.499928" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.502220" elapsed="0.000032"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.495325" elapsed="0.007042"/>
</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-07-28T01:56:58.502596" elapsed="0.000189"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.502836" elapsed="0.000030"/>
</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-07-28T01:56:58.455012" elapsed="0.047954"/>
</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-07-28T01:56:58.510079" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811300&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-07-28T01:56:58.507862" 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-07-28T01:56:58.510763" 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-07-28T01:56:58.510317" elapsed="0.000810"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.511668" 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-07-28T01:56:58.511321" 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-07-28T01:56:58.511889" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.512101" 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 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.507474" elapsed="0.004751"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.512271" elapsed="0.000027"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:58.503184" elapsed="0.009205"/>
</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-07-28T01:56:58.522044" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38124d0&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-07-28T01:56:58.519708" 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-07-28T01:56:58.522719" elapsed="0.000304"/>
</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-07-28T01:56:58.522281" elapsed="0.000799"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.523617" 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-07-28T01:56:58.523276" 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-07-28T01:56:58.523843" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.524093" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.519309" elapsed="0.004911"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.558650" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813470&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-07-28T01:56:58.556336" elapsed="0.002345"/>
</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-07-28T01:56:58.558889" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.559921" 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-07-28T01:56:58.559570" elapsed="0.000382"/>
</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-07-28T01:56:58.560160" elapsed="0.000168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.562811" 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-07-28T01:56:58.560538" elapsed="0.002332"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.562918" elapsed="0.000032"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.554008" elapsed="0.009041"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.595789" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38131a0&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-07-28T01:56:58.593478" 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-07-28T01:56:58.596019" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.597069" 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-07-28T01:56:58.596712" 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-07-28T01:56:58.597308" elapsed="0.000186"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.599969" 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-07-28T01:56:58.597690" elapsed="0.002332"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.600068" elapsed="0.000038"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.592974" elapsed="0.007238"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.638605" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38127f0&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-07-28T01:56:58.636137" elapsed="0.002497"/>
</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-07-28T01:56:58.638830" elapsed="0.000476"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.639867" 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-07-28T01:56:58.639532" 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-07-28T01:56:58.640130" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.643028" 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-07-28T01:56:58.640536" elapsed="0.002630"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.643214" elapsed="0.000032"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.633783" elapsed="0.009591"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.679115" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811cb0&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-07-28T01:56:58.676693" elapsed="0.002451"/>
</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-07-28T01:56:58.679339" elapsed="0.000501"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.680423" 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-07-28T01:56:58.680083" 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-07-28T01:56:58.680705" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.683431" 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-07-28T01:56:58.681058" elapsed="0.002442"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.683544" 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 0x7868a3fb2d50&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-07-28T01:56:58.674328" elapsed="0.009348"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.717722" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812ed0&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-07-28T01:56:58.715306" elapsed="0.002444"/>
</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-07-28T01:56:58.717944" elapsed="0.000488"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.719069" 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-07-28T01:56:58.718689" 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-07-28T01:56:58.719292" elapsed="0.000173"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.722021" 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-07-28T01:56:58.719696" elapsed="0.002377"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.722115" 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 0x7868a3fb2d50&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-07-28T01:56:58.714797" elapsed="0.007454"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.757693" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38109f0&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-07-28T01:56:58.755324" elapsed="0.002398"/>
</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-07-28T01:56:58.757957" elapsed="0.000515"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.759065" 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-07-28T01:56:58.758678" 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-07-28T01:56:58.759377" elapsed="0.000183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.762319" 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-07-28T01:56:58.759786" elapsed="0.002588"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.762419" elapsed="0.000031"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.754749" elapsed="0.007817"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.762661" elapsed="0.000030"/>
</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-07-28T01:56:58.513040" elapsed="0.249743"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.796964" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811760&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-07-28T01:56:58.794557" elapsed="0.002436"/>
</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-07-28T01:56:58.797225" elapsed="0.000499"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.798393" 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-07-28T01:56:58.797964" elapsed="0.000462"/>
</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-07-28T01:56:58.798635" elapsed="0.000204"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.801411" 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-07-28T01:56:58.799029" elapsed="0.002450"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.801524" 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 0x7868a3fb2d50&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-07-28T01:56:58.793964" elapsed="0.007725"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.801744" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:56:58.512589" elapsed="0.289272"/>
</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-07-28T01:56:58.814995" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811620&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-07-28T01:56:58.812064" elapsed="0.002962"/>
</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-07-28T01:56:58.815800" elapsed="0.000346"/>
</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-07-28T01:56:58.815279" elapsed="0.000928"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.816938" 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-07-28T01:56:58.816496" elapsed="0.000479"/>
</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-07-28T01:56:58.817200" elapsed="0.000186"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.817470" elapsed="0.000034"/>
</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 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:58.811515" elapsed="0.006094"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.817814" elapsed="0.000033"/>
</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 0x7868a3fb2d50&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:58.806806" elapsed="0.011150"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.853940" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813830&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-07-28T01:56:58.851595" elapsed="0.002408"/>
</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-07-28T01:56:58.854224" elapsed="0.000501"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.855316" 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-07-28T01:56:58.854928" 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-07-28T01:56:58.855587" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.858322" 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-07-28T01:56:58.855947" elapsed="0.002430"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.858428" elapsed="0.000058"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.848963" elapsed="0.009631"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:58.859044" 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-07-28T01:56:58.858848" elapsed="0.000221"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.894520" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813150&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-07-28T01:56:58.892153" elapsed="0.002395"/>
</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-07-28T01:56:58.894741" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.895754" 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-07-28T01:56:58.895379" 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-07-28T01:56:58.895973" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.898525" 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-07-28T01:56:58.896323" elapsed="0.002256"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.898622" 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 0x7868a3fb2d50&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-07-28T01:56:58.889796" elapsed="0.008951"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.930210" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810900&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-07-28T01:56:58.927964" 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-07-28T01:56:58.930432" elapsed="0.000453"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.931437" 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-07-28T01:56:58.931085" 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-07-28T01:56:58.931729" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.934441" 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-07-28T01:56:58.932081" elapsed="0.002432"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.934558" 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 0x7868a3fb2d50&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-07-28T01:56:58.927493" elapsed="0.007191"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:58.935122" 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-07-28T01:56:58.934890" elapsed="0.000260"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:58.971054" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38138d0&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-07-28T01:56:58.968610" elapsed="0.002476"/>
</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-07-28T01:56:58.971324" elapsed="0.000508"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:58.972500" 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-07-28T01:56:58.972072" elapsed="0.000460"/>
</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-07-28T01:56:58.972762" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:58.975513" 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-07-28T01:56:58.973154" elapsed="0.002414"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:58.975616" elapsed="0.000037"/>
</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 0x7868a3fb2d50&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-07-28T01:56:58.966013" elapsed="0.009745"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.009795" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813ba0&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-07-28T01:56:59.007351" elapsed="0.002473"/>
</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-07-28T01:56:59.010060" elapsed="0.000519"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.011211" 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-07-28T01:56:59.010789" 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-07-28T01:56:59.011483" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.014242" 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-07-28T01:56:59.011875" elapsed="0.002425"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.014451" elapsed="0.000050"/>
</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 0x7868a3fb2d50&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-07-28T01:56:59.006800" elapsed="0.007813"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:59.015082" 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-07-28T01:56:59.014884" elapsed="0.000224"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.050983" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38131a0&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-07-28T01:56:59.048582" elapsed="0.002430"/>
</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-07-28T01:56:59.051244" elapsed="0.000497"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.052353" 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-07-28T01:56:59.051947" elapsed="0.000438"/>
</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-07-28T01:56:59.052591" elapsed="0.000200"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.055511" 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-07-28T01:56:59.052983" elapsed="0.002585"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.055613" elapsed="0.000069"/>
</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 0x7868a3fb2d50&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-07-28T01:56:59.046188" elapsed="0.009598"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.089845" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813c90&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-07-28T01:56:59.087421" elapsed="0.002453"/>
</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-07-28T01:56:59.090131" elapsed="0.000499"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.091247" 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-07-28T01:56:59.090834" elapsed="0.000444"/>
</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-07-28T01:56:59.091522" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.094297" 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-07-28T01:56:59.091912" elapsed="0.002444"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.094400" elapsed="0.000032"/>
</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 0x7868a3fb2d50&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-07-28T01:56:59.086876" elapsed="0.007710"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.094641" elapsed="0.000027"/>
</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-07-28T01:56:58.806279" elapsed="0.288536"/>
</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-07-28T01:56:59.107187" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810130&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-07-28T01:56:59.104749" elapsed="0.002466"/>
</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-07-28T01:56:59.107917" elapsed="0.000342"/>
</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-07-28T01:56:59.107480" elapsed="0.000847"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.108993" 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-07-28T01:56:59.108546" elapsed="0.000479"/>
</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-07-28T01:56:59.109215" elapsed="0.000199"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.109479" elapsed="0.000030"/>
</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 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.104285" elapsed="0.005320"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.109652" elapsed="0.000026"/>
</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 0x7868a3fb2d50&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:59.099729" elapsed="0.010075"/>
</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-07-28T01:56:59.117617" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38126b0&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-07-28T01:56:59.115233" elapsed="0.002413"/>
</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-07-28T01:56:59.118303" elapsed="0.000359"/>
</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-07-28T01:56:59.117850" elapsed="0.000868"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.119311" 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-07-28T01:56:59.118944" 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-07-28T01:56:59.119583" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.119796" 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 0x7868a3fb2d50&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3fb2d50&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.114784" elapsed="0.005170"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.120003" 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 0x7868a3fb2d50&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:59.110025" elapsed="0.010094"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:59.120559" 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-07-28T01:56:59.120317" elapsed="0.000268"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.154252" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811800&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-07-28T01:56:59.151841" elapsed="0.002440"/>
</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-07-28T01:56:59.154490" elapsed="0.000473"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.155625" 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-07-28T01:56:59.155183" elapsed="0.000473"/>
</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-07-28T01:56:59.155849" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.158586" 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-07-28T01:56:59.156240" elapsed="0.002450"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.158739" 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 0x7868a3fb2d50&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-07-28T01:56:59.151324" elapsed="0.007540"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:56:59.159256" 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-07-28T01:56:59.159071" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.193557" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811080&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-07-28T01:56:59.191130" elapsed="0.002456"/>
</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-07-28T01:56:59.193828" elapsed="0.000475"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.194957" 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-07-28T01:56:59.194564" elapsed="0.000464"/>
</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-07-28T01:56:59.195224" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.199078" 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-07-28T01:56:59.195639" elapsed="0.003500"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.199186" elapsed="0.000033"/>
</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 0x7868a3fb2d50&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-07-28T01:56:59.190613" elapsed="0.008707"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.199376" 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-07-28T01:56:59.099211" elapsed="0.100337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.202084" 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-07-28T01:56:59.199746" elapsed="0.002441"/>
</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-07-28T01:56:59.202414" elapsed="0.002448"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.207530" 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-07-28T01:56:59.205098" elapsed="0.002486"/>
</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-07-28T01:56:59.210977" elapsed="0.002198"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.208662" elapsed="0.004551"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.208639" elapsed="0.004601"/>
</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-07-28T01:56:59.215578" elapsed="0.002381"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.213297" elapsed="0.004807"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.213279" elapsed="0.004855"/>
</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-07-28T01:56:59.220484" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.218234" elapsed="0.002309"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.218217" elapsed="0.002351"/>
</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-07-28T01:56:59.223056" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.220666" elapsed="0.002451"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.220648" elapsed="0.002493"/>
</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-07-28T01:56:59.208361" elapsed="0.014832"/>
</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-07-28T01:56:59.226031" elapsed="0.000160"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.223795" elapsed="0.002435"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.223735" elapsed="0.002520"/>
</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-07-28T01:56:59.228611" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.226311" elapsed="0.002358"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.226294" elapsed="0.002402"/>
</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-07-28T01:56:59.223505" elapsed="0.005238"/>
</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-07-28T01:56:59.233517" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:56:59.246866" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:59.247056" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:56:59.233355" elapsed="0.013736"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.231211" elapsed="0.015934"/>
</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-07-28T01:56:59.247556" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.247181" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.231193" elapsed="0.016479"/>
</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-07-28T01:56:59.251264" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.247750" elapsed="0.003646"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.252909" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:59.251970" elapsed="0.000997"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.251553" elapsed="0.001495"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.247728" elapsed="0.005368"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:59.253247" elapsed="0.000077"/>
</return>
<msg time="2026-07-28T01:56:59.253706" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:56:59.229073" elapsed="0.024690"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.259170" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:59.254350" elapsed="0.004868"/>
</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-07-28T01:56:59.259415" elapsed="0.000297"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:56:59.259761" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:56:59.262342" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:56:59.207830" elapsed="0.054547"/>
</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-07-28T01:56:59.278112" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:56:59.278345" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:59.278566" 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-07-28T01:56:59.270579" elapsed="0.008026"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.284234" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:59.279069" elapsed="0.005246"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:59.291716" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:59.292095" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:59.292258" 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-07-28T01:56:59.284704" elapsed="0.007592"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.296315" 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-07-28T01:56:59.292612" elapsed="0.003790"/>
</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-07-28T01:56:59.296706" elapsed="0.004893"/>
</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-07-28T01:56:59.263546" elapsed="0.038238"/>
</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-07-28T01:56:59.262683" elapsed="0.039234"/>
</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-07-28T01:56:59.321588" elapsed="0.002128"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.319381" elapsed="0.004387"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.319351" elapsed="0.004446"/>
</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-07-28T01:56:59.326072" elapsed="0.002333"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.323854" elapsed="0.004611"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.323838" elapsed="0.004655"/>
</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-07-28T01:56:59.330743" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.328550" elapsed="0.002253"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.328534" elapsed="0.002293"/>
</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-07-28T01:56:59.333101" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.330881" elapsed="0.002283"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.330866" elapsed="0.002321"/>
</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-07-28T01:56:59.319099" elapsed="0.014141"/>
</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-07-28T01:56:59.336187" elapsed="0.000145"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.333863" elapsed="0.002504"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.333845" elapsed="0.002547"/>
</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-07-28T01:56:59.338655" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.336446" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.336430" elapsed="0.002308"/>
</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-07-28T01:56:59.333532" elapsed="0.005264"/>
</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-07-28T01:56:59.341970" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:59.355846" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:59.356027" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.341803" elapsed="0.014271"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.339376" elapsed="0.016763"/>
</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-07-28T01:56:59.356576" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.356181" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.339358" elapsed="0.017341"/>
</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-07-28T01:56:59.360174" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.356789" elapsed="0.003475"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.361123" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.360599" elapsed="0.000576"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.360301" elapsed="0.000935"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.356764" elapsed="0.004507"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:59.361328" elapsed="0.000055"/>
</return>
<msg time="2026-07-28T01:56:59.361604" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.339102" elapsed="0.022552"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.363181" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17227  bytes 219428268 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9556  bytes 1707234 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.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-07-28T01:56:59.362168" elapsed="0.001179"/>
</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-07-28T01:56:59.370793" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:59.417396" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:59.417683" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.312s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.131s, 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-07-28T01:56:59.370436" elapsed="0.047310"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.364984" elapsed="0.052879"/>
</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-07-28T01:56:59.418538" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.417969" elapsed="0.000708"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.364934" elapsed="0.053792"/>
</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-07-28T01:56:59.424023" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.418856" elapsed="0.005305"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.425362" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.312s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.131s, 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-07-28T01:56:59.424660" elapsed="0.000916"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.424216" elapsed="0.001453"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.418820" elapsed="0.006898"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:59.425819" elapsed="0.000161"/>
</return>
<msg time="2026-07-28T01:56:59.426305" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.312s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.131s, 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-07-28T01:56:59.364234" elapsed="0.062131"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.427146" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.312s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.131s, 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-07-28T01:56:59.426788" elapsed="0.000425"/>
</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-07-28T01:56:59.428105" elapsed="0.000766"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.427708" elapsed="0.001221"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.427684" elapsed="0.001280"/>
</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-07-28T01:56:59.429431" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.429041" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.429019" elapsed="0.000557"/>
</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-07-28T01:56:59.427634" elapsed="0.001974"/>
</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-07-28T01:56:59.430330" elapsed="0.000478"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.429885" elapsed="0.000988"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.429861" elapsed="0.001049"/>
</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-07-28T01:56:59.431347" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.430986" elapsed="0.000441"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.430963" elapsed="0.000516"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:59.429817" elapsed="0.001697"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:59.427299" elapsed="0.004258"/>
</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-07-28T01:56:59.314345" elapsed="0.117292"/>
</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-07-28T01:56:59.302544" elapsed="0.129173"/>
</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-07-28T01:56:59.448397" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:59.448489" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:59.448647" 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-07-28T01:56:59.439118" elapsed="0.009567"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.452623" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:56:59.448982" elapsed="0.003708"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:56:59.458377" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=81?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:56:59.458735" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:56:59.458927" 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-07-28T01:56:59.452938" elapsed="0.006028"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:56:59.465254" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:56:59.459135" elapsed="0.006221"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.459105" elapsed="0.006287"/>
</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-07-28T01:56:59.465637" 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-07-28T01:56:59.465935" elapsed="0.000033"/>
</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-07-28T01:56:59.432899" elapsed="0.033165"/>
</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-07-28T01:56:59.432025" elapsed="0.034115"/>
</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-07-28T01:56:59.484814" elapsed="0.002071"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.482565" elapsed="0.004361"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.482544" elapsed="0.004408"/>
</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-07-28T01:56:59.489126" elapsed="0.002268"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.487007" elapsed="0.004431"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.486991" elapsed="0.004487"/>
</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-07-28T01:56:59.493636" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.491537" elapsed="0.002157"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.491520" elapsed="0.002199"/>
</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-07-28T01:56:59.495978" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.493774" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.493758" elapsed="0.002303"/>
</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-07-28T01:56:59.482305" elapsed="0.013803"/>
</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-07-28T01:56:59.499007" elapsed="0.000174"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.496726" elapsed="0.002501"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.496707" elapsed="0.002553"/>
</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-07-28T01:56:59.502289" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.499334" elapsed="0.003031"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.499312" elapsed="0.003086"/>
</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-07-28T01:56:59.496346" elapsed="0.006138"/>
</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-07-28T01:56:59.506612" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:56:59.519786" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:59.520003" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.506398" elapsed="0.013667"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.503244" elapsed="0.016914"/>
</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-07-28T01:56:59.520711" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.520214" elapsed="0.000632"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.503219" elapsed="0.017678"/>
</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-07-28T01:56:59.526124" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.521021" elapsed="0.005246"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.527560" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.526781" elapsed="0.000852"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.526322" elapsed="0.001396"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.520986" elapsed="0.006786"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:59.527853" elapsed="0.000070"/>
</return>
<msg time="2026-07-28T01:56:59.528204" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:56:59.502884" elapsed="0.025485"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.529440" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17237  bytes 219429600 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9570  bytes 1710590 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.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-07-28T01:56:59.528862" elapsed="0.000744"/>
</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-07-28T01:56:59.533337" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:56:59.585210" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:56:59.585598" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.481s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:59.533203" elapsed="0.052466"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.530846" elapsed="0.054922"/>
</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-07-28T01:56:59.586365" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.585860" elapsed="0.000679"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.530828" elapsed="0.055761"/>
</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-07-28T01:56:59.591870" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.586728" elapsed="0.005276"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.593205" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.481s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:59.592491" elapsed="0.000774"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.592057" elapsed="0.001290"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.586689" elapsed="0.006705"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:56:59.593502" elapsed="0.000077"/>
</return>
<msg time="2026-07-28T01:56:59.593932" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.481s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:59.530325" elapsed="0.063670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.594907" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=9.481s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:56:59.594438" elapsed="0.000516"/>
</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-07-28T01:56:59.595579" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.595292" elapsed="0.000347"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.595278" elapsed="0.000385"/>
</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-07-28T01:56:59.595973" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.595716" elapsed="0.000630"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.595701" elapsed="0.000669"/>
</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-07-28T01:56:59.595243" elapsed="0.001150"/>
</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-07-28T01:56:59.596861" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.596601" elapsed="0.000318"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.596588" elapsed="0.000353"/>
</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-07-28T01:56:59.597244" elapsed="0.000329"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.596994" elapsed="0.000618"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.596979" elapsed="0.000656"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:56:59.596558" elapsed="0.001100"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:56:59.595017" elapsed="0.002669"/>
</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-07-28T01:56:59.477090" elapsed="0.120655"/>
</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-07-28T01:56:59.466436" elapsed="0.131449"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>81</arg>
<arg>255</arg>
<status status="PASS" start="2026-07-28T01:56:58.343354" elapsed="1.254604"/>
</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-07-28T01:56:58.342706" elapsed="1.255395"/>
</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-07-28T01:56:59.600089" 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-07-28T01:56:59.599578" elapsed="0.000539"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.600796" 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-07-28T01:56:59.600329" elapsed="0.000494"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:56:59.601479" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3411bd0&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:56:59.601330" elapsed="0.000177"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.601553" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:56:59.601707" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3411bd0&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-07-28T01:56:59.601012" elapsed="0.000721"/>
</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-07-28T01:56:59.606697" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.606377" elapsed="0.000385"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.607258" 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-07-28T01:56:59.606967" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.606786" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.606359" elapsed="0.000985"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.614365" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38136a0&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-07-28T01:56:59.612043" 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-07-28T01:56:59.615016" 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-07-28T01:56:59.614620" elapsed="0.000754"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.615935" 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-07-28T01:56:59.615587" 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-07-28T01:56:59.616157" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.616368" 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 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.611634" elapsed="0.004873"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.648226" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38103b0&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-07-28T01:56:59.646035" 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-07-28T01:56:59.648471" elapsed="0.000438"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.649431" 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-07-28T01:56:59.649112" 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-07-28T01:56:59.649668" elapsed="0.000183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.654240" 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-07-28T01:56:59.650053" elapsed="0.004295"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.654447" elapsed="0.000099"/>
</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 0x7868a3411bd0&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-07-28T01:56:59.645515" elapsed="0.009224"/>
</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-07-28T01:56:59.655025" elapsed="0.000195"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.655272" elapsed="0.000029"/>
</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-07-28T01:56:59.606077" elapsed="0.049317"/>
</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-07-28T01:56:59.660469" 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-07-28T01:56:59.660223" elapsed="0.000275"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.659921" elapsed="0.000620"/>
</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-07-28T01:56:59.660757" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.660566" elapsed="0.000248"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.659902" elapsed="0.000933"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.667639" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810cc0&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-07-28T01:56:59.665384" elapsed="0.002284"/>
</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-07-28T01:56:59.668270" 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-07-28T01:56:59.667880" elapsed="0.000761"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.669164" 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-07-28T01:56:59.668836" 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-07-28T01:56:59.669382" elapsed="0.000177"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.669610" elapsed="0.000033"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.664981" elapsed="0.004778"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.702292" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812340&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-07-28T01:56:59.699932" elapsed="0.002394"/>
</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-07-28T01:56:59.702553" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.703608" 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-07-28T01:56:59.703243" 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-07-28T01:56:59.703833" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.706502" 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-07-28T01:56:59.704194" elapsed="0.002361"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.706607" 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 0x7868a3411bd0&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-07-28T01:56:59.699267" elapsed="0.007493"/>
</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-07-28T01:56:59.706967" elapsed="0.000189"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.707207" 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-07-28T01:56:59.659619" elapsed="0.047711"/>
</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-07-28T01:56:59.712719" 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-07-28T01:56:59.712449" elapsed="0.000299"/>
</kw>
<status status="PASS" start="2026-07-28T01:56:59.712099" elapsed="0.000781"/>
</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-07-28T01:56:59.713102" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:56:59.712909" elapsed="0.000252"/>
</branch>
<status status="PASS" start="2026-07-28T01:56:59.712076" elapsed="0.001113"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.723434" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811710&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-07-28T01:56:59.719919" elapsed="0.003586"/>
</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-07-28T01:56:59.724548" elapsed="0.000479"/>
</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-07-28T01:56:59.723867" elapsed="0.001244"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.726030" 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-07-28T01:56:59.725405" elapsed="0.000670"/>
</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-07-28T01:56:59.726366" elapsed="0.000281"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.726731" elapsed="0.000051"/>
</return>
<arg>${flow}</arg>
<arg>${property}</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.719148" elapsed="0.007747"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.759383" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813150&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-07-28T01:56:59.757023" elapsed="0.002392"/>
</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-07-28T01:56:59.759647" elapsed="0.000458"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.760709" 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-07-28T01:56:59.760328" 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-07-28T01:56:59.760933" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.763960" 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-07-28T01:56:59.761301" elapsed="0.002715"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.764068" elapsed="0.000049"/>
</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 0x7868a3411bd0&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-07-28T01:56:59.756405" elapsed="0.007834"/>
</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-07-28T01:56:59.764504" elapsed="0.000196"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.764751" elapsed="0.000029"/>
</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-07-28T01:56:59.711746" elapsed="0.053129"/>
</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-07-28T01:56:59.772013" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811a30&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-07-28T01:56:59.769818" elapsed="0.002223"/>
</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-07-28T01:56:59.772668" 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-07-28T01:56:59.772255" elapsed="0.000779"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.773604" 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-07-28T01:56:59.773225" 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-07-28T01:56:59.773845" elapsed="0.000166"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.774139" elapsed="0.000033"/>
</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 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.769388" elapsed="0.004921"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.774360" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:56:59.765130" elapsed="0.009384"/>
</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-07-28T01:56:59.784264" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811df0&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-07-28T01:56:59.781881" elapsed="0.002412"/>
</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-07-28T01:56:59.784914" 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-07-28T01:56:59.784515" elapsed="0.000750"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.785829" 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-07-28T01:56:59.785473" 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-07-28T01:56:59.786052" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.786264" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:56:59.781432" elapsed="0.004956"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.821283" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb7e0&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-07-28T01:56:59.818938" elapsed="0.002377"/>
</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-07-28T01:56:59.821537" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.822593" 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-07-28T01:56:59.822225" 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-07-28T01:56:59.822852" elapsed="0.000169"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.825480" 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-07-28T01:56:59.823218" elapsed="0.002317"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.825583" elapsed="0.000042"/>
</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 0x7868a3411bd0&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-07-28T01:56:59.816550" elapsed="0.009219"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.857808" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bad40&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-07-28T01:56:59.855524" 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-07-28T01:56:59.858057" elapsed="0.000483"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.859119" 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-07-28T01:56:59.858756" 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-07-28T01:56:59.859345" elapsed="0.000184"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.861963" 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-07-28T01:56:59.859722" elapsed="0.002294"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.862061" elapsed="0.000032"/>
</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 0x7868a3411bd0&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-07-28T01:56:59.855006" elapsed="0.007270"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.896586" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038efc0&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-07-28T01:56:59.894081" elapsed="0.002533"/>
</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-07-28T01:56:59.896809" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.897836" 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-07-28T01:56:59.897450" 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-07-28T01:56:59.898058" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.900594" 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-07-28T01:56:59.898406" elapsed="0.002238"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.900687" 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 0x7868a3411bd0&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-07-28T01:56:59.891805" elapsed="0.009007"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.935910" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f576a0&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-07-28T01:56:59.933662" elapsed="0.002276"/>
</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-07-28T01:56:59.936150" elapsed="0.000463"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.937154" 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-07-28T01:56:59.936816" 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-07-28T01:56:59.937375" elapsed="0.000179"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.939927" 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-07-28T01:56:59.937760" elapsed="0.002217"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.940020" 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 0x7868a3411bd0&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-07-28T01:56:59.931428" elapsed="0.008717"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:56:59.975465" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810ae0&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-07-28T01:56:59.973102" elapsed="0.002395"/>
</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-07-28T01:56:59.975693" elapsed="0.000440"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:56:59.976691" 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-07-28T01:56:59.976334" 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-07-28T01:56:59.976910" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:56:59.979540" 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-07-28T01:56:59.977319" elapsed="0.002273"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:56:59.979636" elapsed="0.000033"/>
</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 0x7868a3411bd0&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-07-28T01:56:59.972594" elapsed="0.007176"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.011686" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810900&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-07-28T01:57:00.009427" elapsed="0.002287"/>
</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-07-28T01:57:00.011908" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.012900" 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-07-28T01:57:00.012560" 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-07-28T01:57:00.013119" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.015701" 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-07-28T01:57:00.013482" elapsed="0.002271"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.015796" 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 0x7868a3411bd0&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-07-28T01:57:00.008933" elapsed="0.006988"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.015974" 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-07-28T01:56:59.775157" elapsed="0.241022"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.048391" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9b70&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-07-28T01:57:00.046172" 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-07-28T01:57:00.048631" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.049658" 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-07-28T01:57:00.049277" 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-07-28T01:57:00.049882" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.052426" 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-07-28T01:57:00.050235" elapsed="0.002259"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.052538" elapsed="0.000032"/>
</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 0x7868a3411bd0&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-07-28T01:57:00.045686" elapsed="0.006983"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.052724" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:56:59.774705" elapsed="0.278186"/>
</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-07-28T01:57:00.064448" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d3f0&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-07-28T01:57:00.062237" elapsed="0.002257"/>
</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-07-28T01:57:00.065095" elapsed="0.000378"/>
</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-07-28T01:57:00.064707" elapsed="0.000822"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.066106" 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-07-28T01:57:00.065753" 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-07-28T01:57:00.066327" elapsed="0.000175"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.066552" elapsed="0.000030"/>
</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 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.061820" elapsed="0.004855"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.066722" 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 0x7868a3411bd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:00.057494" elapsed="0.009342"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.100441" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55350&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-07-28T01:57:00.098053" elapsed="0.002431"/>
</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-07-28T01:57:00.100679" elapsed="0.000430"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.101713" 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-07-28T01:57:00.101315" elapsed="0.000428"/>
</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-07-28T01:57:00.101933" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.104479" 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-07-28T01:57:00.102282" elapsed="0.002253"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.104578" 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 0x7868a3411bd0&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-07-28T01:57:00.095830" elapsed="0.008873"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:00.105103" 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-07-28T01:57:00.104911" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.138586" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38109f0&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-07-28T01:57:00.136327" elapsed="0.002287"/>
</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-07-28T01:57:00.138807" elapsed="0.000456"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.139839" 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-07-28T01:57:00.139481" 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-07-28T01:57:00.140058" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.142612" 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-07-28T01:57:00.140406" elapsed="0.002326"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.142777" 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 0x7868a3411bd0&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-07-28T01:57:00.134128" elapsed="0.008774"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.174546" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38120c0&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-07-28T01:57:00.172293" elapsed="0.002282"/>
</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-07-28T01:57:00.174767" elapsed="0.000441"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.175777" 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-07-28T01:57:00.175409" 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-07-28T01:57:00.175998" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.178566" 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-07-28T01:57:00.176342" elapsed="0.002279"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.178664" 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 0x7868a3411bd0&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-07-28T01:57:00.171824" elapsed="0.006964"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:00.179194" 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-07-28T01:57:00.179010" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.214106" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9490&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-07-28T01:57:00.211670" elapsed="0.002464"/>
</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-07-28T01:57:00.214330" elapsed="0.000479"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.215397" 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-07-28T01:57:00.215021" elapsed="0.000417"/>
</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-07-28T01:57:00.215661" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.218259" 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-07-28T01:57:00.216014" elapsed="0.002300"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.218357" elapsed="0.000030"/>
</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 0x7868a3411bd0&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-07-28T01:57:00.209380" elapsed="0.009119"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.250447" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b90d0&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-07-28T01:57:00.248175" elapsed="0.002316"/>
</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-07-28T01:57:00.250727" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.251760" 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-07-28T01:57:00.251380" 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-07-28T01:57:00.251982" elapsed="0.000171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.254596" 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-07-28T01:57:00.252346" elapsed="0.002306"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.254697" 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 0x7868a3411bd0&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-07-28T01:57:00.247702" elapsed="0.007120"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:00.255214" 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-07-28T01:57:00.255031" elapsed="0.000209"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.288896" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812660&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-07-28T01:57:00.286660" 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-07-28T01:57:00.289117" elapsed="0.000525"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.290221" 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-07-28T01:57:00.289858" 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-07-28T01:57:00.290444" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.293130" 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-07-28T01:57:00.290814" elapsed="0.002374"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.293232" elapsed="0.000028"/>
</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 0x7868a3411bd0&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-07-28T01:57:00.284362" elapsed="0.008994"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.325643" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811710&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-07-28T01:57:00.323371" elapsed="0.002301"/>
</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-07-28T01:57:00.325867" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.326928" 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-07-28T01:57:00.326549" 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-07-28T01:57:00.327149" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.329781" 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-07-28T01:57:00.327569" elapsed="0.002269"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.329882" 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 0x7868a3411bd0&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-07-28T01:57:00.322898" elapsed="0.007109"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.330062" 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-07-28T01:57:00.057039" elapsed="0.273139"/>
</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-07-28T01:57:00.341744" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f6dda0&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-07-28T01:57:00.339494" elapsed="0.002279"/>
</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-07-28T01:57:00.342394" elapsed="0.000327"/>
</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-07-28T01:57:00.341982" elapsed="0.000793"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.343339" 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-07-28T01:57:00.342967" 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-07-28T01:57:00.343572" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.343788" 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 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.339072" elapsed="0.004838"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.343956" 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 0x7868a3411bd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:00.334793" elapsed="0.009277"/>
</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-07-28T01:57:00.351442" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038f0b0&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-07-28T01:57:00.349207" elapsed="0.002278"/>
</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-07-28T01:57:00.352078" 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-07-28T01:57:00.351692" elapsed="0.000740"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.353013" 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-07-28T01:57:00.352649" 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-07-28T01:57:00.353231" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.353439" elapsed="0.000074"/>
</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 0x7868a3411bd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3411bd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.348784" elapsed="0.004838"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.353669" 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 0x7868a3411bd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:00.344284" elapsed="0.009500"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:00.354162" 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-07-28T01:57:00.353980" elapsed="0.000207"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.385865" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038f8d0&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-07-28T01:57:00.383559" elapsed="0.002334"/>
</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-07-28T01:57:00.386088" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.387112" 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-07-28T01:57:00.386741" 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-07-28T01:57:00.387335" elapsed="0.000176"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.389933" 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-07-28T01:57:00.387703" elapsed="0.002287"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.390034" 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 0x7868a3411bd0&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-07-28T01:57:00.383077" elapsed="0.007082"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:00.390565" 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-07-28T01:57:00.390365" elapsed="0.000226"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.422351" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038eb10&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-07-28T01:57:00.420024" elapsed="0.002356"/>
</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-07-28T01:57:00.422590" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.423720" 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-07-28T01:57:00.423315" 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-07-28T01:57:00.423946" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.426655" 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-07-28T01:57:00.424296" elapsed="0.002419"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.426759" 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 0x7868a3411bd0&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-07-28T01:57:00.419554" elapsed="0.007331"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.426939" 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-07-28T01:57:00.334339" elapsed="0.092716"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.429426" 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-07-28T01:57:00.427244" elapsed="0.002308"/>
</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-07-28T01:57:00.429751" elapsed="0.002299"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.434344" 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-07-28T01:57:00.432249" elapsed="0.002143"/>
</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-07-28T01:57:00.437558" elapsed="0.002032"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.435345" elapsed="0.004282"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.435324" elapsed="0.004330"/>
</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-07-28T01:57:00.441827" elapsed="0.002240"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.439712" elapsed="0.004395"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.439695" elapsed="0.004437"/>
</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-07-28T01:57:00.446316" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.444187" elapsed="0.002184"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.444171" elapsed="0.002224"/>
</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-07-28T01:57:00.448552" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.446448" elapsed="0.002163"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.446433" 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-07-28T01:57:00.435102" elapsed="0.013579"/>
</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-07-28T01:57:00.451271" elapsed="0.000130"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.449150" elapsed="0.002286"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.449133" elapsed="0.002355"/>
</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-07-28T01:57:00.453664" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.451547" elapsed="0.002169"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.451531" elapsed="0.002209"/>
</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-07-28T01:57:00.448916" elapsed="0.004870"/>
</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-07-28T01:57:00.458320" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:57:00.472106" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:00.472322" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:57:00.458187" elapsed="0.014190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.456053" elapsed="0.016449"/>
</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-07-28T01:57:00.473007" elapsed="0.000048"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.472564" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.456035" elapsed="0.017145"/>
</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-07-28T01:57:00.477991" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.473304" elapsed="0.004767"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.478793" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:00.478360" elapsed="0.000469"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.478105" elapsed="0.000773"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.473269" elapsed="0.005639"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:00.478956" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:57:00.479203" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:00.454065" elapsed="0.025174"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.482501" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:00.479525" elapsed="0.003042"/>
</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-07-28T01:57:00.482864" elapsed="0.000393"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:57:00.483324" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:57:00.486352" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:57:00.434622" elapsed="0.051818"/>
</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-07-28T01:57:00.504945" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:57:00.505030" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:00.505173" 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-07-28T01:57:00.494464" elapsed="0.010745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.508662" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:00.505554" elapsed="0.003168"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:00.514126" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:00.514483" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:00.514650" 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-07-28T01:57:00.508948" elapsed="0.005739"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.518358" 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-07-28T01:57:00.514970" elapsed="0.003468"/>
</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-07-28T01:57:00.518731" elapsed="0.003242"/>
</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-07-28T01:57:00.487511" elapsed="0.034553"/>
</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-07-28T01:57:00.486767" elapsed="0.035373"/>
</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-07-28T01:57:00.539855" elapsed="0.002032"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.537762" elapsed="0.004196"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.537742" elapsed="0.004243"/>
</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-07-28T01:57:00.544141" elapsed="0.002329"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.542042" elapsed="0.004470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.542025" elapsed="0.004513"/>
</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-07-28T01:57:00.548699" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.546594" elapsed="0.002161"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.546578" elapsed="0.002200"/>
</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-07-28T01:57:00.550969" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.548833" elapsed="0.002195"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.548818" elapsed="0.002234"/>
</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-07-28T01:57:00.537518" elapsed="0.013581"/>
</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-07-28T01:57:00.553701" elapsed="0.000117"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.551588" elapsed="0.002263"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.551570" elapsed="0.002305"/>
</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-07-28T01:57:00.556185" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.553929" elapsed="0.002309"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.553913" elapsed="0.002348"/>
</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-07-28T01:57:00.551333" elapsed="0.004975"/>
</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-07-28T01:57:00.559126" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:00.572220" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:00.572433" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.558997" elapsed="0.013542"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.556862" elapsed="0.015764"/>
</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-07-28T01:57:00.573194" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.572681" elapsed="0.000648"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.556844" elapsed="0.016558"/>
</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-07-28T01:57:00.578150" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.573560" elapsed="0.004672"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.578953" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.578538" elapsed="0.000455"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.578264" elapsed="0.000779"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.573523" elapsed="0.005550"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:00.579121" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:57:00.579329" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.556603" elapsed="0.022764"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.579997" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17255  bytes 219431764 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9593  bytes 1714804 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.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-07-28T01:57:00.579655" elapsed="0.000422"/>
</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-07-28T01:57:00.584098" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:00.633184" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:00.633423" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.529s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, 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-07-28T01:57:00.583921" elapsed="0.049599"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.580929" elapsed="0.052679"/>
</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-07-28T01:57:00.634094" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.633664" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.580904" elapsed="0.053366"/>
</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-07-28T01:57:00.639216" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.634396" elapsed="0.004956"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.640541" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.529s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, 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-07-28T01:57:00.639855" elapsed="0.000750"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.639406" elapsed="0.001280"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.634361" elapsed="0.006372"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:00.640811" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:57:00.641146" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.529s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, 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-07-28T01:57:00.580545" elapsed="0.060660"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.641972" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.529s, table=0, n_packets=6, n_bytes=480, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.120s, 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-07-28T01:57:00.641708" elapsed="0.000311"/>
</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-07-28T01:57:00.642611" elapsed="0.000531"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.642333" elapsed="0.000850"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.642319" 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-07-28T01:57:00.643539" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.643261" elapsed="0.000336"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.643245" elapsed="0.000375"/>
</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-07-28T01:57:00.642286" elapsed="0.001357"/>
</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-07-28T01:57:00.644091" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.643836" elapsed="0.000613"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.643822" elapsed="0.000667"/>
</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-07-28T01:57:00.644806" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.644545" elapsed="0.000319"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.644529" elapsed="0.000358"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:00.643793" elapsed="0.001116"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:00.642079" elapsed="0.002858"/>
</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-07-28T01:57:00.532864" elapsed="0.112128"/>
</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-07-28T01:57:00.522441" elapsed="0.122603"/>
</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-07-28T01:57:00.656942" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:00.656987" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:00.657125" 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-07-28T01:57:00.650371" elapsed="0.006781"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.659628" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:00.657372" elapsed="0.002300"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:00.663919" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=88?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:00.664131" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:00.664273" 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-07-28T01:57:00.659835" elapsed="0.004475"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:57:00.670280" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:57:00.664422" elapsed="0.005943"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.664395" elapsed="0.006005"/>
</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-07-28T01:57:00.670642" 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-07-28T01:57:00.670889" 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-07-28T01:57:00.645844" elapsed="0.025154"/>
</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-07-28T01:57:00.645258" elapsed="0.025811"/>
</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-07-28T01:57:00.689605" elapsed="0.002034"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.687448" elapsed="0.004229"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.687430" elapsed="0.004271"/>
</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-07-28T01:57:00.693928" elapsed="0.002208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.691760" elapsed="0.004416"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.691742" elapsed="0.004458"/>
</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-07-28T01:57:00.698361" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.696256" elapsed="0.002161"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.696239" elapsed="0.002201"/>
</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-07-28T01:57:00.700597" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.698512" elapsed="0.002142"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.698496" 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-07-28T01:57:00.687213" elapsed="0.013511"/>
</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-07-28T01:57:00.703330" elapsed="0.000115"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.701191" elapsed="0.002302"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.701174" elapsed="0.002344"/>
</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-07-28T01:57:00.705699" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.703572" elapsed="0.002179"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.703556" elapsed="0.002218"/>
</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-07-28T01:57:00.700957" elapsed="0.004864"/>
</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-07-28T01:57:00.708743" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:00.721641" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:00.721848" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.708614" elapsed="0.013364"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.706350" elapsed="0.015717"/>
</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-07-28T01:57:00.722595" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.722122" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.706333" elapsed="0.016441"/>
</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-07-28T01:57:00.727022" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.722897" elapsed="0.004209"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.727828" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.727392" elapsed="0.000477"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.727139" elapsed="0.000781"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.722863" elapsed="0.005086"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:00.727998" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:57:00.728205" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:00.706098" elapsed="0.022146"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.728871" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17265  bytes 219433096 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9607  bytes 1718160 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.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-07-28T01:57:00.728529" elapsed="0.000421"/>
</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-07-28T01:57:00.732926" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:00.782157" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:00.782375" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.678s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:57:00.732742" elapsed="0.049691"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.729763" elapsed="0.052795"/>
</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-07-28T01:57:00.783045" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.782617" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.729737" elapsed="0.053485"/>
</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-07-28T01:57:00.788154" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.783346" elapsed="0.004941"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.789520" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.678s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:57:00.788780" elapsed="0.000804"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.788340" elapsed="0.001327"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.783311" elapsed="0.006404"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:00.789791" elapsed="0.000063"/>
</return>
<msg time="2026-07-28T01:57:00.790123" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.678s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:57:00.729353" elapsed="0.060827"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.791187" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=10.678s, table=0, n_packets=6, n_bytes=480, 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-07-28T01:57:00.790638" elapsed="0.000650"/>
</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-07-28T01:57:00.792584" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.791973" elapsed="0.000747"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.791942" elapsed="0.000831"/>
</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-07-28T01:57:00.793630" elapsed="0.000390"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.792972" elapsed="0.001088"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.792933" elapsed="0.001151"/>
</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-07-28T01:57:00.791874" elapsed="0.002234"/>
</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-07-28T01:57:00.794572" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.794298" elapsed="0.000333"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.794284" 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-07-28T01:57:00.794959" elapsed="0.000356"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.794707" elapsed="0.000648"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.794692" elapsed="0.000686"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:00.794254" elapsed="0.001147"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:00.791399" elapsed="0.004030"/>
</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-07-28T01:57:00.681667" elapsed="0.113830"/>
</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-07-28T01:57:00.671360" elapsed="0.124194"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>88</arg>
<arg>42</arg>
<status status="PASS" start="2026-07-28T01:56:59.599113" elapsed="1.196506"/>
</kw>
<doc>OF1.3: OFPP_ALL = 0xfffffffc, /* All physical ports except input port. */</doc>
<tag>all</tag>
<status status="PASS" start="2026-07-28T01:56:59.598507" elapsed="1.197245"/>
</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-07-28T01:57:00.797635" 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-07-28T01:57:00.797120" elapsed="0.000543"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.798267" 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-07-28T01:57:00.797870" elapsed="0.000423"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:57:00.798926" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a387afd0&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:57:00.798804" elapsed="0.000149"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.798994" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:00.799142" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a387afd0&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-07-28T01:57:00.798492" elapsed="0.000676"/>
</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-07-28T01:57:00.804169" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.803874" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.804748" 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-07-28T01:57:00.804440" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.804259" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.803856" elapsed="0.000975"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.811645" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038ca40&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-07-28T01:57:00.809378" elapsed="0.002296"/>
</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-07-28T01:57:00.812268" 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-07-28T01:57:00.811883" elapsed="0.000754"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.813155" 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-07-28T01:57:00.812829" 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-07-28T01:57:00.813391" elapsed="0.000177"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.813617" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.808961" elapsed="0.004778"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.845399" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038cf40&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-07-28T01:57:00.843147" elapsed="0.002281"/>
</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-07-28T01:57:00.845641" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.846611" 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-07-28T01:57:00.846279" 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-07-28T01:57:00.846839" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.849392" 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-07-28T01:57:00.847190" elapsed="0.002250"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.849498" 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 0x7868a387afd0&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-07-28T01:57:00.842659" elapsed="0.006966"/>
</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-07-28T01:57:00.849824" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.850056" 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-07-28T01:57:00.803574" elapsed="0.046601"/>
</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-07-28T01:57:00.855206" 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-07-28T01:57:00.854991" elapsed="0.000241"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.854699" elapsed="0.000574"/>
</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-07-28T01:57:00.855496" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.855297" elapsed="0.000256"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.854681" elapsed="0.000892"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.862439" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38117b0&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-07-28T01:57:00.860240" 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-07-28T01:57:00.863073" 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-07-28T01:57:00.862686" elapsed="0.000736"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.863948" 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-07-28T01:57:00.863632" elapsed="0.000345"/>
</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-07-28T01:57:00.864168" elapsed="0.000166"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.864382" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.859837" elapsed="0.004685"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.896104" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812110&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-07-28T01:57:00.893911" 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-07-28T01:57:00.896324" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.897310" 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-07-28T01:57:00.896966" 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-07-28T01:57:00.897545" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.900137" 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-07-28T01:57:00.897944" elapsed="0.002242"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.900229" 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 0x7868a387afd0&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-07-28T01:57:00.893407" elapsed="0.006947"/>
</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-07-28T01:57:00.900566" elapsed="0.000186"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.900801" 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-07-28T01:57:00.854399" elapsed="0.046523"/>
</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-07-28T01:57:00.906008" 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-07-28T01:57:00.905794" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:00.905497" elapsed="0.000579"/>
</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-07-28T01:57:00.906286" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:00.906101" elapsed="0.000240"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:00.905477" elapsed="0.000885"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.913135" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038e660&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-07-28T01:57:00.910946" 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-07-28T01:57:00.913783" 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-07-28T01:57:00.913383" elapsed="0.000748"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.914657" 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-07-28T01:57:00.914324" 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-07-28T01:57:00.914878" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.915085" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.910544" elapsed="0.004662"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:00.947007" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d760&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-07-28T01:57:00.944787" 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-07-28T01:57:00.947232" elapsed="0.000444"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.948202" 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-07-28T01:57:00.947881" 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-07-28T01:57:00.948421" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:00.950998" 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-07-28T01:57:00.948786" elapsed="0.002261"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.951091" 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 0x7868a387afd0&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-07-28T01:57:00.944276" elapsed="0.006952"/>
</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-07-28T01:57:00.951489" elapsed="0.000190"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.951729" 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-07-28T01:57:00.905157" elapsed="0.046694"/>
</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-07-28T01:57:00.958959" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38107c0&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-07-28T01:57:00.956707" elapsed="0.002281"/>
</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-07-28T01:57:00.959591" 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-07-28T01:57:00.959194" elapsed="0.000758"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.960480" 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-07-28T01:57:00.960146" 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-07-28T01:57:00.960700" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.960907" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.956284" elapsed="0.004744"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.961075" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:00.952063" elapsed="0.009156"/>
</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-07-28T01:57:00.970843" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813100&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-07-28T01:57:00.968635" elapsed="0.002236"/>
</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-07-28T01:57:00.971472" 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-07-28T01:57:00.971076" elapsed="0.000746"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:00.972335" 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-07-28T01:57:00.972016" 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-07-28T01:57:00.972571" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:00.972786" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:00.968240" elapsed="0.004668"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.006483" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813f60&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-07-28T01:57:01.004262" 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-07-28T01:57:01.006708" elapsed="0.000427"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.007680" 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-07-28T01:57:01.007338" 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-07-28T01:57:01.007899" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.010469" 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-07-28T01:57:01.008249" elapsed="0.002272"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.010564" 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 0x7868a387afd0&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-07-28T01:57:01.002060" elapsed="0.008628"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.042422" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38132e0&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-07-28T01:57:01.040212" 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-07-28T01:57:01.042662" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.043642" 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-07-28T01:57:01.043296" 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-07-28T01:57:01.043863" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.046424" 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-07-28T01:57:01.044209" elapsed="0.002280"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.046533" 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 0x7868a387afd0&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-07-28T01:57:01.039741" elapsed="0.006918"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.081886" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038ff10&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-07-28T01:57:01.079515" elapsed="0.002404"/>
</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-07-28T01:57:01.082121" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.083159" 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-07-28T01:57:01.082802" 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-07-28T01:57:01.083384" elapsed="0.000181"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.086013" 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-07-28T01:57:01.083757" elapsed="0.002308"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.086113" elapsed="0.000040"/>
</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 0x7868a387afd0&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-07-28T01:57:01.075992" elapsed="0.010263"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.121414" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038dfd0&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-07-28T01:57:01.119184" elapsed="0.002258"/>
</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-07-28T01:57:01.121654" elapsed="0.000451"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.122668" 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-07-28T01:57:01.122308" 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-07-28T01:57:01.122889" elapsed="0.000180"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.125473" 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-07-28T01:57:01.123264" elapsed="0.002261"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.125568" elapsed="0.000032"/>
</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 0x7868a387afd0&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-07-28T01:57:01.116906" elapsed="0.008862"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.157768" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d850&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-07-28T01:57:01.155543" 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-07-28T01:57:01.157995" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.159016" 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-07-28T01:57:01.158664" 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-07-28T01:57:01.159236" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.161836" 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-07-28T01:57:01.159604" elapsed="0.002283"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.161931" 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 0x7868a387afd0&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-07-28T01:57:01.155055" elapsed="0.007000"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.246304" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d5d0&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-07-28T01:57:01.191747" elapsed="0.054605"/>
</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-07-28T01:57:01.246693" elapsed="0.000555"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.247851" 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-07-28T01:57:01.247477" 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-07-28T01:57:01.248078" elapsed="0.000165"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.250790" 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-07-28T01:57:01.248433" elapsed="0.002410"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.250893" elapsed="0.000039"/>
</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 0x7868a387afd0&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-07-28T01:57:01.191240" elapsed="0.059800"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.251109" 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-07-28T01:57:00.961864" elapsed="0.289366"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.286040" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d760&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-07-28T01:57:01.283670" elapsed="0.002404"/>
</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-07-28T01:57:01.286433" elapsed="0.000480"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.287522" 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-07-28T01:57:01.287122" elapsed="0.000511"/>
</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-07-28T01:57:01.287837" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.290432" 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-07-28T01:57:01.288195" elapsed="0.002306"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.290550" 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 0x7868a387afd0&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-07-28T01:57:01.283008" elapsed="0.007689"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.290754" elapsed="0.000029"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:57:00.961406" elapsed="0.329469"/>
</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-07-28T01:57:01.302554" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038f510&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-07-28T01:57:01.300280" elapsed="0.002303"/>
</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-07-28T01:57:01.303195" elapsed="0.000325"/>
</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-07-28T01:57:01.302798" elapsed="0.000777"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.304131" 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-07-28T01:57:01.303770" 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-07-28T01:57:01.304374" elapsed="0.000193"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.304618" elapsed="0.000030"/>
</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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:01.299856" elapsed="0.004888"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.304791" 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 0x7868a387afd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:01.295525" elapsed="0.009384"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.338501" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038c360&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-07-28T01:57:01.336184" elapsed="0.002348"/>
</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-07-28T01:57:01.338734" elapsed="0.000442"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.339875" 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-07-28T01:57:01.339506" 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-07-28T01:57:01.340097" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.342687" 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-07-28T01:57:01.340466" elapsed="0.002275"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.342787" elapsed="0.000033"/>
</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 0x7868a387afd0&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-07-28T01:57:01.333922" elapsed="0.008996"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:01.343411" 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-07-28T01:57:01.343219" elapsed="0.000217"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.376760" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038f6f0&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-07-28T01:57:01.374540" 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-07-28T01:57:01.376986" elapsed="0.000498"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.378064" 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-07-28T01:57:01.377705" 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-07-28T01:57:01.378285" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.380873" 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-07-28T01:57:01.378652" elapsed="0.002276"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.380972" elapsed="0.000057"/>
</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 0x7868a387afd0&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-07-28T01:57:01.372307" elapsed="0.008829"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.413888" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d7b0&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-07-28T01:57:01.411655" 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-07-28T01:57:01.414110" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.415116" 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-07-28T01:57:01.414761" 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-07-28T01:57:01.415335" elapsed="0.000175"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.418027" 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-07-28T01:57:01.415701" elapsed="0.002383"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.418127" 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 0x7868a387afd0&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-07-28T01:57:01.411168" elapsed="0.007085"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:01.418664" 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-07-28T01:57:01.418475" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.452388" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38103b0&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-07-28T01:57:01.450144" elapsed="0.002273"/>
</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-07-28T01:57:01.452629" elapsed="0.000470"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.453683" 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-07-28T01:57:01.453301" elapsed="0.000464"/>
</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-07-28T01:57:01.453958" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.456497" 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-07-28T01:57:01.454307" elapsed="0.002245"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.456597" elapsed="0.000032"/>
</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 0x7868a387afd0&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-07-28T01:57:01.447876" elapsed="0.008851"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.488699" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813600&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-07-28T01:57:01.486466" 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-07-28T01:57:01.488922" elapsed="0.000469"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.489977" 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-07-28T01:57:01.489616" 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-07-28T01:57:01.490199" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.492736" 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-07-28T01:57:01.490563" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.492834" 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 0x7868a387afd0&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-07-28T01:57:01.485977" elapsed="0.007012"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:01.493384" 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-07-28T01:57:01.493200" elapsed="0.000210"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.526772" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811120&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-07-28T01:57:01.524526" elapsed="0.002274"/>
</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-07-28T01:57:01.526992" elapsed="0.000431"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.528010" 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-07-28T01:57:01.527647" 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-07-28T01:57:01.528228" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.530946" 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-07-28T01:57:01.528592" elapsed="0.002457"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.531093" 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 0x7868a387afd0&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-07-28T01:57:01.522311" elapsed="0.009054"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.564115" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038d3f0&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-07-28T01:57:01.561844" elapsed="0.002300"/>
</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-07-28T01:57:01.564345" elapsed="0.000457"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.565384" 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-07-28T01:57:01.565013" 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-07-28T01:57:01.565620" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.568140" 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-07-28T01:57:01.565968" elapsed="0.002228"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.568247" 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 0x7868a387afd0&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-07-28T01:57:01.561251" elapsed="0.007122"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.568428" elapsed="0.000039"/>
</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-07-28T01:57:01.295054" elapsed="0.273508"/>
</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-07-28T01:57:01.580081" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038dee0&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-07-28T01:57:01.577846" elapsed="0.002263"/>
</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-07-28T01:57:01.580741" elapsed="0.000357"/>
</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-07-28T01:57:01.580324" elapsed="0.000829"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.581731" 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-07-28T01:57:01.581348" 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-07-28T01:57:01.581951" elapsed="0.000158"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.582159" elapsed="0.000031"/>
</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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:01.577419" elapsed="0.004864"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.582331" elapsed="0.000026"/>
</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 0x7868a387afd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:01.573116" elapsed="0.009330"/>
</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-07-28T01:57:01.589883" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f575b0&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-07-28T01:57:01.587605" elapsed="0.002307"/>
</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-07-28T01:57:01.590612" 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-07-28T01:57:01.590210" elapsed="0.000770"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.591564" 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-07-28T01:57:01.591175" elapsed="0.000420"/>
</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-07-28T01:57:01.591787" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.591998" 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 0x7868a387afd0&gt;
object. The &lt;FlowLib.Flow object at 0x7868a387afd0&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:01.587181" elapsed="0.004941"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.592169" 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 0x7868a387afd0&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:01.582682" elapsed="0.009602"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:01.592685" 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-07-28T01:57:01.592496" elapsed="0.000215"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.624446" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f577e0&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-07-28T01:57:01.622165" elapsed="0.002327"/>
</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-07-28T01:57:01.624734" elapsed="0.000485"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.625838" 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-07-28T01:57:01.625432" elapsed="0.000437"/>
</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-07-28T01:57:01.626060" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.628620" 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-07-28T01:57:01.626408" elapsed="0.002268"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.628723" elapsed="0.000035"/>
</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 0x7868a387afd0&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-07-28T01:57:01.621635" elapsed="0.007227"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:01.629307" 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-07-28T01:57:01.629118" elapsed="0.000214"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:01.661123" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38132e0&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-07-28T01:57:01.658866" elapsed="0.002285"/>
</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-07-28T01:57:01.661344" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:01.662363" 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-07-28T01:57:01.661991" 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-07-28T01:57:01.662598" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.665339" 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-07-28T01:57:01.662946" elapsed="0.002518"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.665511" elapsed="0.000031"/>
</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 0x7868a387afd0&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-07-28T01:57:01.658383" elapsed="0.007258"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:01.665696" 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-07-28T01:57:01.572656" elapsed="0.093158"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.668180" 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-07-28T01:57:01.666004" elapsed="0.002232"/>
</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-07-28T01:57:01.668427" elapsed="0.002306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.672990" 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-07-28T01:57:01.670929" elapsed="0.002108"/>
</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-07-28T01:57:01.676140" elapsed="0.002046"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.674011" elapsed="0.004215"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.673983" elapsed="0.004277"/>
</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-07-28T01:57:01.680419" elapsed="0.002261"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.678317" elapsed="0.004403"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.678301" 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-07-28T01:57:01.684926" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.682799" elapsed="0.002188"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.682783" elapsed="0.002228"/>
</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-07-28T01:57:01.687157" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.685065" elapsed="0.002151"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.685050" 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-07-28T01:57:01.673749" elapsed="0.013538"/>
</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-07-28T01:57:01.689905" elapsed="0.000132"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.687777" elapsed="0.002293"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.687759" elapsed="0.002335"/>
</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-07-28T01:57:01.692243" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.690147" elapsed="0.002147"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.690131" elapsed="0.002187"/>
</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-07-28T01:57:01.687540" elapsed="0.004824"/>
</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-07-28T01:57:01.696952" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:57:01.710343" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:01.710610" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:57:01.696766" elapsed="0.013904"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.694666" elapsed="0.016091"/>
</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-07-28T01:57:01.711260" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.710815" elapsed="0.000574"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.694647" elapsed="0.016789"/>
</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-07-28T01:57:01.716413" elapsed="0.000079"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.711607" elapsed="0.004980"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.717869" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:01.717152" elapsed="0.000777"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.716665" elapsed="0.001348"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.711570" elapsed="0.006493"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:01.718141" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:57:01.718581" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:01.692667" elapsed="0.025973"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.722801" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:01.719073" elapsed="0.003787"/>
</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-07-28T01:57:01.723071" elapsed="0.000282"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:57:01.723402" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:01.725591" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:57:01.673253" elapsed="0.052365"/>
</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-07-28T01:57:01.742179" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:57:01.742313" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:01.742583" 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-07-28T01:57:01.732732" elapsed="0.009910"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.748270" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:01.743101" elapsed="0.005272"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:01.755306" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:01.755582" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:01.755759" 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-07-28T01:57:01.748776" elapsed="0.007012"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.758404" 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-07-28T01:57:01.755996" elapsed="0.002483"/>
</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-07-28T01:57:01.758675" elapsed="0.002355"/>
</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-07-28T01:57:01.726375" elapsed="0.034721"/>
</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-07-28T01:57:01.725841" elapsed="0.035311"/>
</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-07-28T01:57:01.777891" elapsed="0.002015"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.775764" elapsed="0.004181"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.775742" elapsed="0.004230"/>
</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-07-28T01:57:01.782132" elapsed="0.002220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.780028" elapsed="0.004364"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.780012" elapsed="0.004405"/>
</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-07-28T01:57:01.786650" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.784487" elapsed="0.002220"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.784469" elapsed="0.002262"/>
</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-07-28T01:57:01.788902" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.786786" elapsed="0.002176"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.786770" elapsed="0.002216"/>
</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-07-28T01:57:01.775520" elapsed="0.013514"/>
</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-07-28T01:57:01.791778" elapsed="0.000126"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.789524" elapsed="0.002414"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.789506" elapsed="0.002456"/>
</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-07-28T01:57:01.794127" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.792016" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.792000" elapsed="0.002204"/>
</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-07-28T01:57:01.789271" elapsed="0.004981"/>
</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-07-28T01:57:01.797121" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:01.809194" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:01.809406" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.796988" elapsed="0.012517"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.794808" elapsed="0.014786"/>
</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-07-28T01:57:01.810127" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.809652" elapsed="0.000604"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.794791" elapsed="0.015512"/>
</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-07-28T01:57:01.815443" elapsed="0.000081"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.810426" elapsed="0.005184"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.816941" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.816160" elapsed="0.000850"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.815741" elapsed="0.001351"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.810392" elapsed="0.006751"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:01.817222" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:57:01.817597" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.794553" elapsed="0.023106"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.818272" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17285  bytes 219435368 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9630  bytes 1722486 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 9  bytes 726 (726.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-07-28T01:57:01.818022" elapsed="0.000307"/>
</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-07-28T01:57:01.821143" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:01.869044" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:01.869258" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.765s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.103s, 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-07-28T01:57:01.821015" elapsed="0.048302"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.818895" elapsed="0.050506"/>
</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-07-28T01:57:01.869931" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.869494" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.818877" elapsed="0.051231"/>
</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-07-28T01:57:01.875086" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.870232" elapsed="0.004986"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.876363" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.765s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.103s, 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-07-28T01:57:01.875710" elapsed="0.000714"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.875272" elapsed="0.001267"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.870198" elapsed="0.006392"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:01.876667" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:57:01.877022" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.765s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.103s, 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-07-28T01:57:01.818621" elapsed="0.058460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.878087" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.765s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.103s, 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-07-28T01:57:01.877538" elapsed="0.000654"/>
</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-07-28T01:57:01.879500" elapsed="0.001158"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.878880" elapsed="0.001867"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.878847" elapsed="0.002024"/>
</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-07-28T01:57:01.881624" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.881001" elapsed="0.000756"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.880965" elapsed="0.000853"/>
</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-07-28T01:57:01.878775" elapsed="0.003100"/>
</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-07-28T01:57:01.882380" elapsed="0.000343"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.882089" elapsed="0.000675"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.882075" elapsed="0.000714"/>
</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-07-28T01:57:01.883105" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.882845" elapsed="0.000318"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.882828" elapsed="0.000358"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:01.882046" elapsed="0.001164"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:01.878306" elapsed="0.004933"/>
</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-07-28T01:57:01.771143" elapsed="0.112150"/>
</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-07-28T01:57:01.761368" elapsed="0.121978"/>
</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-07-28T01:57:01.895129" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:01.895175" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:01.895274" 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-07-28T01:57:01.888679" elapsed="0.006621"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.897802" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:01.895520" elapsed="0.002325"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:01.902171" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=21?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:01.902392" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:01.902560" 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-07-28T01:57:01.898007" elapsed="0.004592"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:57:01.908709" elapsed="0.000074"/>
</return>
<status status="PASS" start="2026-07-28T01:57:01.902710" elapsed="0.006123"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.902683" elapsed="0.006185"/>
</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-07-28T01:57:01.909091" 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-07-28T01:57:01.909328" 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-07-28T01:57:01.884132" elapsed="0.025304"/>
</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-07-28T01:57:01.883577" elapsed="0.025954"/>
</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-07-28T01:57:01.927334" elapsed="0.002048"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.925239" elapsed="0.004181"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.925220" elapsed="0.004225"/>
</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-07-28T01:57:01.931605" elapsed="0.002236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.929517" elapsed="0.004364"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.929500" elapsed="0.004405"/>
</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-07-28T01:57:01.936044" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.933959" elapsed="0.002175"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.933943" elapsed="0.002216"/>
</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-07-28T01:57:01.938319" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.936215" elapsed="0.002162"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.936199" elapsed="0.002202"/>
</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-07-28T01:57:01.925004" elapsed="0.013445"/>
</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-07-28T01:57:01.941037" elapsed="0.000118"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.938933" elapsed="0.002256"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.938915" 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-07-28T01:57:01.943379" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.941267" elapsed="0.002164"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.941251" elapsed="0.002217"/>
</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-07-28T01:57:01.938697" elapsed="0.004820"/>
</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-07-28T01:57:01.946501" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:01.958829" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:01.959040" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.946355" elapsed="0.012746"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.944055" elapsed="0.015131"/>
</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-07-28T01:57:01.959712" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.959243" elapsed="0.000601"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.944037" elapsed="0.015854"/>
</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-07-28T01:57:01.964888" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:01.960015" elapsed="0.005008"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.966185" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.965512" elapsed="0.000738"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.965077" elapsed="0.001256"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.959980" elapsed="0.006403"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:01.966489" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:57:01.966832" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:01.943800" elapsed="0.023092"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:01.967908" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17296  bytes 219436766 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9645  bytes 1725924 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 9  bytes 726 (726.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-07-28T01:57:01.967321" elapsed="0.000715"/>
</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-07-28T01:57:01.974082" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:02.016153" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:02.016386" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.913s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:01.973955" elapsed="0.042490"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:01.969323" elapsed="0.047246"/>
</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-07-28T01:57:02.017087" elapsed="0.000131"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.016627" elapsed="0.000678"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:01.969284" elapsed="0.048068"/>
</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-07-28T01:57:02.022397" elapsed="0.000092"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.017510" elapsed="0.005066"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.023782" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.913s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:02.023057" elapsed="0.000790"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.022630" elapsed="0.001315"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.017444" elapsed="0.006553"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:02.024074" elapsed="0.000064"/>
</return>
<msg time="2026-07-28T01:57:02.024446" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.913s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:01.968690" elapsed="0.055844"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.025644" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=11.913s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:02.025040" elapsed="0.000708"/>
</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-07-28T01:57:02.026346" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.026081" elapsed="0.000325"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.026067" elapsed="0.000363"/>
</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-07-28T01:57:02.026755" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.026499" elapsed="0.000621"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.026483" elapsed="0.000661"/>
</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-07-28T01:57:02.026035" elapsed="0.001132"/>
</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-07-28T01:57:02.027636" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.027356" elapsed="0.000350"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.027342" elapsed="0.000389"/>
</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-07-28T01:57:02.028036" elapsed="0.000312"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.027784" elapsed="0.000603"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.027769" elapsed="0.000641"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:02.027313" elapsed="0.001121"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:02.025832" elapsed="0.002644"/>
</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-07-28T01:57:01.920172" elapsed="0.108359"/>
</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-07-28T01:57:01.909827" elapsed="0.118761"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>21</arg>
<arg>21</arg>
<status status="PASS" start="2026-07-28T01:57:00.796695" elapsed="1.231960"/>
</kw>
<doc>OF1.3 OFPP_CONTROLLER = 0xfffffffd, /* Send to controller. */</doc>
<tag>controller</tag>
<status status="PASS" start="2026-07-28T01:57:00.796129" elapsed="1.232669"/>
</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-07-28T01:57:02.030688" 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-07-28T01:57:02.030186" elapsed="0.000530"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.031348" 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-07-28T01:57:02.030935" elapsed="0.000440"/>
</kw>
<kw name="Create Inventory Flow" owner="FlowLib">
<kw name="Make Inventory Flow" owner="FlowLib">
<msg time="2026-07-28T01:57:02.032039" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3475990&gt;</msg>
<var>${flow}</var>
<doc>Robot Keyword to create and return an instance of the Flow
class.</doc>
<status status="PASS" start="2026-07-28T01:57:02.031904" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.032109" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:02.032270" level="INFO">${flow} = &lt;FlowLib.Flow object at 0x7868a3475990&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-07-28T01:57:02.031582" elapsed="0.000714"/>
</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-07-28T01:57:02.037510" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.037187" elapsed="0.000390"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.038087" 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-07-28T01:57:02.037785" elapsed="0.000328"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.037602" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.037169" elapsed="0.001002"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.045057" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9d00&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-07-28T01:57:02.042777" elapsed="0.002308"/>
</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-07-28T01:57:02.045717" 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-07-28T01:57:02.045302" elapsed="0.000789"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.046659" 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-07-28T01:57:02.046298" elapsed="0.000390"/>
</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-07-28T01:57:02.046892" elapsed="0.000171"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.047113" 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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.042359" elapsed="0.004877"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.079710" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bab60&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-07-28T01:57:02.077387" elapsed="0.002353"/>
</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-07-28T01:57:02.079941" elapsed="0.000449"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.080972" 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-07-28T01:57:02.080623" 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-07-28T01:57:02.081205" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.083796" 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-07-28T01:57:02.081580" elapsed="0.002267"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.083892" elapsed="0.000041"/>
</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 0x7868a3475990&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-07-28T01:57:02.076830" elapsed="0.007202"/>
</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-07-28T01:57:02.084228" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.084474" elapsed="0.000029"/>
</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-07-28T01:57:02.036840" elapsed="0.047758"/>
</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-07-28T01:57:02.089866" 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-07-28T01:57:02.089641" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.089320" elapsed="0.000614"/>
</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-07-28T01:57:02.090148" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.089960" elapsed="0.000243"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.089300" elapsed="0.000924"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.097248" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f55210&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-07-28T01:57:02.094978" elapsed="0.002298"/>
</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-07-28T01:57:02.097954" elapsed="0.000304"/>
</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-07-28T01:57:02.097502" elapsed="0.000811"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.098842" 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-07-28T01:57:02.098523" 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-07-28T01:57:02.099060" elapsed="0.000159"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.099269" 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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.094569" elapsed="0.004823"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.131093" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b069acf0&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-07-28T01:57:02.128864" elapsed="0.002257"/>
</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-07-28T01:57:02.131317" elapsed="0.000447"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.132287" 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-07-28T01:57:02.131968" 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-07-28T01:57:02.132522" elapsed="0.000183"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.135135" 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-07-28T01:57:02.132897" elapsed="0.002287"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.135227" 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 0x7868a3475990&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-07-28T01:57:02.128332" elapsed="0.007020"/>
</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-07-28T01:57:02.135568" elapsed="0.000185"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.135802" 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-07-28T01:57:02.089017" elapsed="0.046905"/>
</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-07-28T01:57:02.141032" 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-07-28T01:57:02.140815" elapsed="0.000243"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.140488" 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-07-28T01:57:02.141308" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.141124" elapsed="0.000238"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.140469" elapsed="0.000914"/>
</if>
<kw name="Remove Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.148180" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038cc70&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-07-28T01:57:02.145990" elapsed="0.002218"/>
</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-07-28T01:57:02.148828" 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-07-28T01:57:02.148412" elapsed="0.000762"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.149700" 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-07-28T01:57:02.149366" 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-07-28T01:57:02.149916" elapsed="0.000161"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.150126" 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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.145552" elapsed="0.004735"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.183075" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b0698900&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-07-28T01:57:02.180855" 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-07-28T01:57:02.183297" elapsed="0.000448"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.184271" 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-07-28T01:57:02.183948" 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-07-28T01:57:02.184507" elapsed="0.000187"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.187084" 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-07-28T01:57:02.184886" elapsed="0.002247"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.187175" 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 0x7868a3475990&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-07-28T01:57:02.180336" elapsed="0.006965"/>
</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-07-28T01:57:02.187514" elapsed="0.000183"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.187747" 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-07-28T01:57:02.140183" elapsed="0.047683"/>
</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-07-28T01:57:02.194970" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bbf10&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-07-28T01:57:02.192765" 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-07-28T01:57:02.195621" 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-07-28T01:57:02.195219" elapsed="0.000768"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.196513" 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-07-28T01:57:02.196179" 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-07-28T01:57:02.196750" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.196962" 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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.192355" elapsed="0.004730"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.197131" elapsed="0.000025"/>
</return>
<arg>${flow}</arg>
<doc>Will clean out any existing flow actions in the given &lt;FlowLib.Flow object at 0x7868a3475990&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:02.188077" elapsed="0.009169"/>
</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-07-28T01:57:02.206921" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3f573d0&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-07-28T01:57:02.204516" elapsed="0.002433"/>
</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-07-28T01:57:02.207554" 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-07-28T01:57:02.207155" elapsed="0.000750"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.208414" 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-07-28T01:57:02.208098" elapsed="0.000345"/>
</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-07-28T01:57:02.208663" elapsed="0.000169"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.208917" elapsed="0.000030"/>
</return>
<arg>${flow}</arg>
<arg>instruction</arg>
<doc>Removes the element at the given ${element_xpath} within the given &lt;FlowLib.Flow object at 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.204127" elapsed="0.004915"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.243321" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3813150&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-07-28T01:57:02.241115" elapsed="0.002234"/>
</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-07-28T01:57:02.243558" elapsed="0.000429"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.244538" 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-07-28T01:57:02.244191" 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-07-28T01:57:02.244780" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.247328" 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-07-28T01:57:02.245133" elapsed="0.002245"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.247422" elapsed="0.000042"/>
</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 0x7868a3475990&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-07-28T01:57:02.238747" elapsed="0.008816"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.279284" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811d00&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-07-28T01:57:02.277086" 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-07-28T01:57:02.279527" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.280532" 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-07-28T01:57:02.280161" 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-07-28T01:57:02.280801" elapsed="0.000166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.283327" 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-07-28T01:57:02.281158" elapsed="0.002219"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.283420" 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 0x7868a3475990&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-07-28T01:57:02.276611" elapsed="0.006950"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.318258" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3810b30&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-07-28T01:57:02.315612" elapsed="0.002674"/>
</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-07-28T01:57:02.318494" elapsed="0.000439"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.319480" 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-07-28T01:57:02.319136" 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-07-28T01:57:02.319700" elapsed="0.000160"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.322378" 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-07-28T01:57:02.320049" elapsed="0.002432"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.322527" 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 0x7868a3475990&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-07-28T01:57:02.312529" elapsed="0.010126"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.356352" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb6a0&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-07-28T01:57:02.354143" 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-07-28T01:57:02.356602" elapsed="0.000443"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.357598" 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-07-28T01:57:02.357247" elapsed="0.000382"/>
</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-07-28T01:57:02.357819" elapsed="0.000161"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.360330" 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-07-28T01:57:02.358169" elapsed="0.002212"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.360424" elapsed="0.000043"/>
</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 0x7868a3475990&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-07-28T01:57:02.351910" elapsed="0.008692"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.392596" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b90d0&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-07-28T01:57:02.390341" elapsed="0.002284"/>
</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-07-28T01:57:02.392819" elapsed="0.000435"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.393811" 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-07-28T01:57:02.393471" 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-07-28T01:57:02.394030" elapsed="0.000157"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.396595" 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-07-28T01:57:02.394375" elapsed="0.002276"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.396694" 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 0x7868a3475990&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-07-28T01:57:02.389785" elapsed="0.007034"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.428634" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01b9f80&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-07-28T01:57:02.426390" 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-07-28T01:57:02.428855" elapsed="0.000433"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.429852" 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-07-28T01:57:02.429504" 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-07-28T01:57:02.430116" elapsed="0.000164"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.432941" 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-07-28T01:57:02.430486" elapsed="0.002508"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.433037" 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 0x7868a3475990&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-07-28T01:57:02.425900" elapsed="0.007263"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.433216" 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-07-28T01:57:02.197889" elapsed="0.235443"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.464995" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3812200&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-07-28T01:57:02.462777" elapsed="0.002246"/>
</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-07-28T01:57:02.465216" elapsed="0.000454"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.466218" 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-07-28T01:57:02.465874" 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-07-28T01:57:02.466436" elapsed="0.000178"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.469005" 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-07-28T01:57:02.466803" elapsed="0.002254"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.469100" 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 0x7868a3475990&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-07-28T01:57:02.462295" elapsed="0.006930"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.469278" elapsed="0.000026"/>
</return>
<arg>${flow}</arg>
<arg>0</arg>
<arg>0</arg>
<arg>${output_port}</arg>
<status status="PASS" start="2026-07-28T01:57:02.197427" elapsed="0.271965"/>
</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-07-28T01:57:02.480906" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba8e0&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-07-28T01:57:02.478656" elapsed="0.002278"/>
</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-07-28T01:57:02.481537" 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-07-28T01:57:02.481139" elapsed="0.000758"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.482430" 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-07-28T01:57:02.482090" 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-07-28T01:57:02.482666" elapsed="0.000166"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.482880" 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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.478234" elapsed="0.004768"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.483093" elapsed="0.000029"/>
</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 0x7868a3475990&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:02.473974" elapsed="0.009242"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.516587" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01ba5c0&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-07-28T01:57:02.514313" elapsed="0.002303"/>
</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-07-28T01:57:02.516808" elapsed="0.000428"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.517830" 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-07-28T01:57:02.517440" elapsed="0.000421"/>
</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-07-28T01:57:02.518056" elapsed="0.000163"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.520703" 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-07-28T01:57:02.518409" elapsed="0.002349"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.520802" 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 0x7868a3475990&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-07-28T01:57:02.511965" elapsed="0.008963"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:02.521325" 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-07-28T01:57:02.521136" elapsed="0.000214"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.554711" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01bb1a0&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-07-28T01:57:02.552481" elapsed="0.002258"/>
</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-07-28T01:57:02.554932" elapsed="0.000437"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.555937" 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-07-28T01:57:02.555588" 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-07-28T01:57:02.556158" elapsed="0.000159"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.558736" 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-07-28T01:57:02.556544" elapsed="0.002245"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.558833" 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 0x7868a3475990&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-07-28T01:57:02.550223" elapsed="0.008736"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.599560" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b01baf20&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-07-28T01:57:02.596878" elapsed="0.002720"/>
</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-07-28T01:57:02.599870" elapsed="0.000526"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.601160" 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-07-28T01:57:02.600693" elapsed="0.000503"/>
</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-07-28T01:57:02.601523" elapsed="0.000213"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.604723" 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-07-28T01:57:02.601946" elapsed="0.002835"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.604835" elapsed="0.000051"/>
</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 0x7868a3475990&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-07-28T01:57:02.595962" elapsed="0.009091"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:02.605527" 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-07-28T01:57:02.605273" elapsed="0.000282"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.642926" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a3811530&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-07-28T01:57:02.640420" elapsed="0.002537"/>
</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-07-28T01:57:02.643195" elapsed="0.000530"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.644369" 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-07-28T01:57:02.643976" elapsed="0.000488"/>
</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-07-28T01:57:02.644680" elapsed="0.000172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.647545" 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-07-28T01:57:02.645085" elapsed="0.002559"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.647695" elapsed="0.000037"/>
</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 0x7868a3475990&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-07-28T01:57:02.637892" elapsed="0.009942"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.682699" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38103b0&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-07-28T01:57:02.680165" elapsed="0.002564"/>
</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-07-28T01:57:02.682970" elapsed="0.000520"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.684155" 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-07-28T01:57:02.683738" elapsed="0.000454"/>
</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-07-28T01:57:02.684475" elapsed="0.000210"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.687342" 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-07-28T01:57:02.684884" elapsed="0.002561"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.687561" 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 0x7868a3475990&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-07-28T01:57:02.679601" elapsed="0.008093"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:02.688143" 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-07-28T01:57:02.687907" elapsed="0.000262"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.723976" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38110d0&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-07-28T01:57:02.721671" elapsed="0.002334"/>
</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-07-28T01:57:02.724203" elapsed="0.000518"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.725313" 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-07-28T01:57:02.724929" 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-07-28T01:57:02.725561" elapsed="0.000167"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.728397" 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-07-28T01:57:02.725934" elapsed="0.002538"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.728529" elapsed="0.000035"/>
</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 0x7868a3475990&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-07-28T01:57:02.719335" elapsed="0.009331"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.761874" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b052d3a0&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-07-28T01:57:02.759467" elapsed="0.002436"/>
</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-07-28T01:57:02.762138" elapsed="0.000523"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.763319" 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-07-28T01:57:02.762902" elapsed="0.000448"/>
</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-07-28T01:57:02.763559" elapsed="0.000202"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.766360" 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-07-28T01:57:02.763952" elapsed="0.002466"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.766477" elapsed="0.000031"/>
</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 0x7868a3475990&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-07-28T01:57:02.758912" elapsed="0.007694"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.766660" 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-07-28T01:57:02.473540" elapsed="0.293323"/>
</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-07-28T01:57:02.779230" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868a38101d0&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-07-28T01:57:02.776809" elapsed="0.002449"/>
</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-07-28T01:57:02.779972" 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-07-28T01:57:02.779531" elapsed="0.000828"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.781009" 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-07-28T01:57:02.780605" elapsed="0.000436"/>
</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-07-28T01:57:02.781232" elapsed="0.000162"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.781443" elapsed="0.000079"/>
</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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.776321" elapsed="0.005301"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.781671" elapsed="0.000026"/>
</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 0x7868a3475990&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:02.771750" elapsed="0.010037"/>
</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-07-28T01:57:02.789631" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038c680&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-07-28T01:57:02.787216" elapsed="0.002443"/>
</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-07-28T01:57:02.790288" elapsed="0.000371"/>
</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-07-28T01:57:02.789865" elapsed="0.000849"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.791315" 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-07-28T01:57:02.790908" elapsed="0.000471"/>
</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-07-28T01:57:02.791589" elapsed="0.000163"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.791835" elapsed="0.000032"/>
</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 0x7868a3475990&gt;
object. The &lt;FlowLib.Flow object at 0x7868a3475990&gt; object's xml representation will be updated to reflect this removal.</doc>
<status status="PASS" start="2026-07-28T01:57:02.786761" elapsed="0.005201"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.792010" 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 0x7868a3475990&gt; object</doc>
<status status="PASS" start="2026-07-28T01:57:02.782009" elapsed="0.010115"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:02.792588" 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-07-28T01:57:02.792383" elapsed="0.000231"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.826446" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038dd00&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-07-28T01:57:02.824047" elapsed="0.002444"/>
</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-07-28T01:57:02.826688" elapsed="0.000474"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.827795" 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-07-28T01:57:02.827405" elapsed="0.000461"/>
</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-07-28T01:57:02.828061" elapsed="0.000162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.830899" 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-07-28T01:57:02.828504" elapsed="0.002492"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.831041" 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 0x7868a3475990&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-07-28T01:57:02.823533" elapsed="0.007675"/>
</kw>
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:02.831622" 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-07-28T01:57:02.831419" elapsed="0.000271"/>
</kw>
<kw name="Add Flow XML Element" owner="FlowLib">
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:57:02.872278" level="INFO">${flow_xml} = &lt;Element 'flow' at 0x7868b038ec50&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-07-28T01:57:02.869960" elapsed="0.002372"/>
</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-07-28T01:57:02.872553" elapsed="0.000472"/>
</kw>
<kw name="Element To String" owner="XML">
<msg time="2026-07-28T01:57:02.873652" 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-07-28T01:57:02.873233" elapsed="0.000451"/>
</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-07-28T01:57:02.873879" elapsed="0.000177"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.876716" 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-07-28T01:57:02.874252" elapsed="0.002525"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.876827" elapsed="0.000033"/>
</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 0x7868a3475990&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-07-28T01:57:02.869441" elapsed="0.007519"/>
</kw>
<return>
<value>${flow}</value>
<status status="PASS" start="2026-07-28T01:57:02.877015" elapsed="0.000027"/>
</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-07-28T01:57:02.771256" elapsed="0.105889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.879622" 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-07-28T01:57:02.877344" elapsed="0.002338"/>
</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-07-28T01:57:02.879896" elapsed="0.002404"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.884683" 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-07-28T01:57:02.882534" elapsed="0.002198"/>
</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-07-28T01:57:02.887978" elapsed="0.002103"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.885784" elapsed="0.004337"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.885760" elapsed="0.004389"/>
</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-07-28T01:57:02.892426" elapsed="0.002329"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.890208" elapsed="0.004630"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.890192" elapsed="0.004675"/>
</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-07-28T01:57:02.897091" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.894926" elapsed="0.002224"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.894909" elapsed="0.002266"/>
</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-07-28T01:57:02.899334" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.897231" elapsed="0.002165"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.897215" elapsed="0.002205"/>
</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-07-28T01:57:02.885511" elapsed="0.013973"/>
</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-07-28T01:57:02.902144" elapsed="0.000136"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.899976" elapsed="0.002339"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.899958" elapsed="0.002381"/>
</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-07-28T01:57:02.904581" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.902394" elapsed="0.002244"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.902378" elapsed="0.002283"/>
</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-07-28T01:57:02.899732" elapsed="0.004977"/>
</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-07-28T01:57:02.909240" level="INFO">Executing command '/sbin/ifconfig s1 | grep -o -E "([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}"'.</msg>
<msg time="2026-07-28T01:57:02.923816" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:02.924025" level="INFO">${output} = 1e:6d:6a:39:6b:4c</msg>
<var>${output}</var>
<arg>${cmd}</arg>
<doc>Executes ``command`` on the remote machine and returns its outputs.</doc>
<status status="PASS" start="2026-07-28T01:57:02.909106" elapsed="0.014974"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.906990" elapsed="0.017176"/>
</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-07-28T01:57:02.924719" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.924222" elapsed="0.000628"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.906971" elapsed="0.017927"/>
</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-07-28T01:57:02.929517" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.925022" elapsed="0.004583"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.930351" level="INFO">${output} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:02.929913" elapsed="0.000476"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.929642" elapsed="0.000800"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.924987" elapsed="0.005510"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:02.930549" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:57:02.930817" level="INFO">${switch.datapath_id_output_string} = 1e:6d:6a:39:6b:4c</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-07-28T01:57:02.905003" elapsed="0.025852"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.934337" level="INFO">1e:6d:6a:39:6b:4c</msg>
<arg>${switch.datapath_id_output_string}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:02.931154" elapsed="0.003251"/>
</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-07-28T01:57:02.934715" elapsed="0.000417"/>
</kw>
<return>
<value>${switch.datapath_id}</value>
<status status="PASS" start="2026-07-28T01:57:02.935204" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:57:02.938416" level="INFO">${dpid_id} = 33455282416460</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-07-28T01:57:02.884968" elapsed="0.053505"/>
</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-07-28T01:57:02.956405" level="INFO">PUT Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.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-07-28T01:57:02.956527" level="INFO">PUT Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32 
 status=201, reason=Created 
 headers={'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:02.956646" 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-07-28T01:57:02.946691" elapsed="0.009981"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.959343" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:02.956921" elapsed="0.002466"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:02.964129" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:02.964582" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:02.964755" 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-07-28T01:57:02.959568" elapsed="0.005273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:02.968928" 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-07-28T01:57:02.965130" elapsed="0.003882"/>
</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-07-28T01:57:02.969334" elapsed="0.003623"/>
</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-07-28T01:57:02.939591" elapsed="0.033434"/>
</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-07-28T01:57:02.938791" elapsed="0.034289"/>
</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-07-28T01:57:02.988520" elapsed="0.002167"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.986208" elapsed="0.004517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.986189" elapsed="0.004561"/>
</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-07-28T01:57:02.993101" elapsed="0.002419"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:02.990806" elapsed="0.004756"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.990790" elapsed="0.004796"/>
</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-07-28T01:57:02.997932" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.995641" elapsed="0.002349"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.995625" elapsed="0.002389"/>
</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-07-28T01:57:03.000349" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:02.998068" elapsed="0.002343"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:02.998053" elapsed="0.002381"/>
</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-07-28T01:57:02.985931" elapsed="0.014566"/>
</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-07-28T01:57:03.003316" elapsed="0.000174"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.001047" elapsed="0.002479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.001029" elapsed="0.002522"/>
</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-07-28T01:57:03.006095" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.003606" elapsed="0.002545"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.003590" elapsed="0.002585"/>
</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-07-28T01:57:03.000768" elapsed="0.005455"/>
</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-07-28T01:57:03.009302" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:03.022001" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:03.022279" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.009135" elapsed="0.013217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.006852" elapsed="0.015588"/>
</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-07-28T01:57:03.023114" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.022539" elapsed="0.000711"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.006834" elapsed="0.016463"/>
</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-07-28T01:57:03.029995" elapsed="0.000119"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.023529" elapsed="0.006692"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.032353" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.031132" elapsed="0.001378"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.030342" elapsed="0.002316"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.023490" elapsed="0.009226"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:03.032857" elapsed="0.000135"/>
</return>
<msg time="2026-07-28T01:57:03.033411" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.006556" elapsed="0.026952"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.035028" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17326  bytes 219439930 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9677  bytes 1737148 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 9  bytes 726 (726.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-07-28T01:57:03.034170" elapsed="0.001051"/>
</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-07-28T01:57:03.042066" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:03.085072" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:03.085354" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.982s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.122s, 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-07-28T01:57:03.041886" elapsed="0.043527"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.037082" elapsed="0.048527"/>
</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-07-28T01:57:03.086274" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.085671" elapsed="0.000737"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.037038" elapsed="0.049446"/>
</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-07-28T01:57:03.092798" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.086737" elapsed="0.006165"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.093716" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.982s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.122s, 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-07-28T01:57:03.093230" elapsed="0.000625"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.092938" elapsed="0.000981"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.086697" elapsed="0.007255"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:03.094003" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:57:03.094236" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.982s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.122s, 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-07-28T01:57:03.036169" elapsed="0.058115"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.094967" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=12.982s, table=0, n_packets=7, n_bytes=550, send_flow_rem priority=0 actions=CONTROLLER:65535
 cookie=0x0, duration=0.122s, 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-07-28T01:57:03.094580" elapsed="0.000465"/>
</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-07-28T01:57:03.095973" elapsed="0.000821"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.095569" elapsed="0.001292"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.095548" elapsed="0.001352"/>
</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-07-28T01:57:03.097392" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.096981" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.096958" elapsed="0.000576"/>
</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-07-28T01:57:03.095496" elapsed="0.002070"/>
</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-07-28T01:57:03.098244" elapsed="0.000505"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.097860" elapsed="0.000953"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.097833" elapsed="0.001017"/>
</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-07-28T01:57:03.099319" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.098927" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.098904" elapsed="0.000535"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:03.097782" elapsed="0.001710"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:03.095140" elapsed="0.004393"/>
</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-07-28T01:57:02.981281" elapsed="0.118345"/>
</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-07-28T01:57:02.973332" elapsed="0.126392"/>
</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-07-28T01:57:03.112699" level="INFO">DELETE Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:03.112759" level="INFO">DELETE Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32 
 status=204, reason=No Content 
 headers={} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:03.112925" 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-07-28T01:57:03.105739" elapsed="0.007225"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.116578" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:03.113269" elapsed="0.003372"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:03.122429" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/flow-node-inventory:table=200/flow=32?content=config 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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=node01e4n6bw0qhefd8vo1zca7vv6b11.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:03.122771" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A33455282416460/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-07-28T01:57:03.122935" 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-07-28T01:57:03.116902" elapsed="0.006073"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:57:03.129549" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:57:03.123152" elapsed="0.006484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.123122" elapsed="0.006549"/>
</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-07-28T01:57:03.129911" elapsed="0.000034"/>
</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-07-28T01:57:03.130176" elapsed="0.000031"/>
</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-07-28T01:57:03.100946" elapsed="0.029354"/>
</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-07-28T01:57:03.100047" elapsed="0.030335"/>
</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-07-28T01:57:03.146101" elapsed="0.002147"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.143865" elapsed="0.004428"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.143846" elapsed="0.004472"/>
</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-07-28T01:57:03.150571" elapsed="0.002305"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.148375" elapsed="0.004557"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.148358" elapsed="0.004606"/>
</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-07-28T01:57:03.155183" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.153026" elapsed="0.002214"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.153009" elapsed="0.002255"/>
</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-07-28T01:57:03.157530" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.155318" elapsed="0.002273"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.155302" elapsed="0.002313"/>
</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-07-28T01:57:03.143610" elapsed="0.014052"/>
</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-07-28T01:57:03.160388" elapsed="0.000144"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.158165" elapsed="0.002402"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.158147" elapsed="0.002448"/>
</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-07-28T01:57:03.162874" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.160660" elapsed="0.002277"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.160643" 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-07-28T01:57:03.157923" elapsed="0.005087"/>
</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-07-28T01:57:03.167130" level="INFO">Executing command '/sbin/ifconfig'.</msg>
<msg time="2026-07-28T01:57:03.179956" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:03.180234" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.166985" elapsed="0.013324"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.163593" elapsed="0.016805"/>
</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-07-28T01:57:03.180995" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.180511" elapsed="0.000625"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.163575" elapsed="0.017608"/>
</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-07-28T01:57:03.186632" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.181342" elapsed="0.005434"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.188052" level="INFO">${output} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.187283" elapsed="0.000838"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.186831" elapsed="0.001451"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.181291" elapsed="0.007058"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:03.188437" elapsed="0.000105"/>
</return>
<msg time="2026-07-28T01:57:03.188843" level="INFO">${tmp} = ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  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-07-28T01:57:03.163302" elapsed="0.025648"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.189645" level="INFO">ens3: flags=4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu 1458
        inet 10.30.171.224  netmask 255.255.254.0  broadcast 10.30.171.255
        inet6 fe80::f816:3eff:fee7:680  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether fa:16:3e:e7:06:80  txqueuelen 1000  (Ethernet)
        RX packets 17337  bytes 219441328 (219.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9692  bytes 1740586 (1.7 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 314  bytes 28652 (28.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 314  bytes 28652 (28.6 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::1c6d:6aff:fe39:6b4c  prefixlen 64  scopeid 0x20&lt;link&gt;
        ether 1e:6d:6a:39:6b:4c  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 648 (648.0 B)
        RX errors 0  dropped 6  overruns 0  frame 0
        TX packets 9  bytes 726 (726.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-07-28T01:57:03.189232" elapsed="0.000498"/>
</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-07-28T01:57:03.193966" level="INFO">Executing command 'sudo /usr/bin/ovs-ofctl dump-flows s1 -O OpenFlow13'.</msg>
<msg time="2026-07-28T01:57:03.251138" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:03.251397" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=13.143s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:03.193766" elapsed="0.057741"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.190605" elapsed="0.061001"/>
</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-07-28T01:57:03.252185" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.251685" elapsed="0.000664"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.190574" elapsed="0.061824"/>
</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-07-28T01:57:03.257857" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.252566" elapsed="0.005436"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.259278" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=13.143s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:03.258541" elapsed="0.000816"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.258057" elapsed="0.001388"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.252527" elapsed="0.007002"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:03.259612" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:57:03.259996" level="INFO">${output} = OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=13.143s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:03.190155" elapsed="0.069903"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.261024" level="INFO">OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0xa, duration=13.143s, table=0, n_packets=7, n_bytes=550, 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-07-28T01:57:03.260642" elapsed="0.000428"/>
</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-07-28T01:57:03.261685" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.261389" elapsed="0.000359"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.261375" elapsed="0.000397"/>
</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-07-28T01:57:03.262113" elapsed="0.000364"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.261835" elapsed="0.000688"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.261815" elapsed="0.000734"/>
</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-07-28T01:57:03.261339" elapsed="0.001233"/>
</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-07-28T01:57:03.263041" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.262766" elapsed="0.000343"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.262752" elapsed="0.000381"/>
</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-07-28T01:57:03.263477" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.263187" elapsed="0.000658"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.263172" elapsed="0.000700"/>
</if>
<var name="${str}">table=200</var>
<status status="PASS" start="2026-07-28T01:57:03.262721" elapsed="0.001174"/>
</iter>
<var>${str}</var>
<value>@{validations}</value>
<status status="PASS" start="2026-07-28T01:57:03.261132" elapsed="0.002797"/>
</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-07-28T01:57:03.139007" elapsed="0.124985"/>
</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-07-28T01:57:03.130730" elapsed="0.133382"/>
</kw>
<arg>${TEST_NAME}</arg>
<arg>200</arg>
<arg>32</arg>
<arg>12345</arg>
<status status="PASS" start="2026-07-28T01:57:02.029745" elapsed="1.234442"/>
</kw>
<doc>OF1.3 OFPP_LOCAL = 0xfffffffe, /* Local openflow "port". */</doc>
<tag>local</tag>
<status status="PASS" start="2026-07-28T01:57:02.029207" elapsed="1.235113"/>
</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-07-28T01:57:03.267840" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:03.267524" elapsed="0.000377"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:03.267505" elapsed="0.000420"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:03.268245" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:03.268363" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:03.268093" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.269182" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:57:03.268578" elapsed="0.000662"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:03.269860" 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-07-28T01:57:03.269430" elapsed="0.000458"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:03.270842" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:03.270922" 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-07-28T01:57:03.270528" elapsed="0.000418"/>
</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-07-28T01:57:03.271123" elapsed="0.000388"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:03.272484" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:03.637442" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:56:47 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:03.272123" elapsed="0.365447"/>
</kw>
<msg time="2026-07-28T01:57:03.637640" 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-07-28T01:57:03.271706" elapsed="0.366018"/>
</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-07-28T01:57:03.270137" elapsed="0.367680"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:03.638308" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:57:04.855046" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:04.855485" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:04.855607" 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-07-28T01:57:03.638090" elapsed="1.217577"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:04.856206" elapsed="0.000581"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:04.858010" 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-07-28T01:57:04.857293" elapsed="0.000974"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:04.858793" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:04.858483" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:04.858402" elapsed="0.000550"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:04.859381" elapsed="0.000113"/>
</return>
<status status="PASS" start="2026-07-28T01:57:04.859100" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:04.859062" elapsed="0.000575"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:04.859718" 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-07-28T01:57:04.865813" elapsed="0.000154"/>
</kw>
<msg time="2026-07-28T01:57:04.866014" 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-07-28T01:57:04.865142" elapsed="0.000946"/>
</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-07-28T01:57:04.866255" elapsed="0.000021"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:04.866422" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:04.860516" elapsed="0.006020"/>
</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-07-28T01:57:03.266996" elapsed="1.599639"/>
</kw>
<msg time="2026-07-28T01:57:04.866690" 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-07-28T01:57:03.266381" elapsed="1.600371"/>
</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-07-28T01:57:03.265905" elapsed="1.600926"/>
</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-07-28T01:57:04.868977" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:04.868664" elapsed="0.000373"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:04.868644" elapsed="0.000419"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:04.869349" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:04.869470" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:04.869224" elapsed="0.000276"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:04.870064" 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.224" 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-07-28T01:57:04.869670" elapsed="0.000443"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:04.870706" 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-07-28T01:57:04.870276" elapsed="0.000458"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:04.871653" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:04.871736" 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-07-28T01:57:04.871315" elapsed="0.000445"/>
</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-07-28T01:57:04.871928" elapsed="0.000326"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:04.873154" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:05.212258" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:03 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:04.872832" elapsed="0.339691"/>
</kw>
<msg time="2026-07-28T01:57:05.212602" 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-07-28T01:57:04.872434" elapsed="0.340257"/>
</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-07-28T01:57:04.870959" elapsed="0.341837"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.213398" 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-07-28T01:57:05.246071" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:57:05.246381" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:05.246528" 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-07-28T01:57:05.213082" elapsed="0.033501"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:05.247035" elapsed="0.000651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.249033" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:05.248232" elapsed="0.000901"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:05.249754" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:05.249369" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.249320" elapsed="0.000595"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:05.250334" elapsed="0.000147"/>
</return>
<status status="PASS" start="2026-07-28T01:57:05.250033" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.250001" elapsed="0.000614"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:05.250691" 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-07-28T01:57:05.257029" elapsed="0.000263"/>
</kw>
<msg time="2026-07-28T01:57:05.257357" 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-07-28T01:57:05.255632" elapsed="0.001886"/>
</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-07-28T01:57:05.257767" elapsed="0.000076"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:05.258063" 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-07-28T01:57:05.251659" elapsed="0.006569"/>
</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-07-28T01:57:04.868132" elapsed="0.390238"/>
</kw>
<msg time="2026-07-28T01:57:05.258448" 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-07-28T01:57:04.867551" elapsed="0.391056"/>
</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-07-28T01:57:04.867031" elapsed="0.391695"/>
</kw>
<arg>${tools_system}</arg>
<status status="PASS" start="2026-07-28T01:57:03.265565" elapsed="1.993292"/>
</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-07-28T01:57:05.262372" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:05.261837" elapsed="0.000644"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.261809" elapsed="0.000710"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.262970" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:05.263218" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:05.262796" elapsed="0.000467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.264157" level="INFO">Attempting to execute command "sudo ovs-vsctl del-manager" on remote system "10.30.171.224" 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-07-28T01:57:05.263566" elapsed="0.000641"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.264853" 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-07-28T01:57:05.264407" elapsed="0.000472"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.265955" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:05.266034" 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-07-28T01:57:05.265624" elapsed="0.000434"/>
</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-07-28T01:57:05.266262" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.267626" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:05.610520" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:05 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:05.267249" elapsed="0.343532"/>
</kw>
<msg time="2026-07-28T01:57:05.610956" 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-07-28T01:57:05.266825" elapsed="0.344441"/>
</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-07-28T01:57:05.265210" elapsed="0.346304"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.612505" level="INFO">Executing command 'sudo ovs-vsctl del-manager'.</msg>
<msg time="2026-07-28T01:57:05.675729" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:05.676054" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:05.676155" 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-07-28T01:57:05.612003" elapsed="0.064203"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:05.676720" elapsed="0.000521"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.678589" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:05.677796" elapsed="0.000900"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:05.679228" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:05.678878" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.678825" 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-07-28T01:57:05.679780" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T01:57:05.679538" elapsed="0.000385"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.679502" elapsed="0.000474"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:05.680053" 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-07-28T01:57:05.687516" elapsed="0.000333"/>
</kw>
<msg time="2026-07-28T01:57:05.687951" 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-07-28T01:57:05.686242" elapsed="0.001779"/>
</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-07-28T01:57:05.688188" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:05.688355" 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-07-28T01:57:05.680813" 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-07-28T01:57:05.261008" elapsed="0.427543"/>
</kw>
<msg time="2026-07-28T01:57:05.688605" 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-07-28T01:57:05.260009" elapsed="0.428656"/>
</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-07-28T01:57:05.259169" elapsed="0.429576"/>
</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-07-28T01:57:05.690863" elapsed="0.000112"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:05.690561" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:05.690541" elapsed="0.000501"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.691326" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:05.691435" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:05.691201" elapsed="0.000279"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.692030" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl stop" on remote system "10.30.171.224" 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-07-28T01:57:05.691640" elapsed="0.000437"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.692645" 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-07-28T01:57:05.692238" elapsed="0.000434"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:05.693556" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:05.693636" 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-07-28T01:57:05.693253" elapsed="0.000407"/>
</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-07-28T01:57:05.693824" elapsed="0.000322"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:05.695065" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:06.033378" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:05 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:05.694697" elapsed="0.338852"/>
</kw>
<msg time="2026-07-28T01:57:06.033630" 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-07-28T01:57:05.694318" elapsed="0.339405"/>
</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-07-28T01:57:05.692896" elapsed="0.340940"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.034325" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl stop'.</msg>
<msg time="2026-07-28T01:57:06.299397" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:06.299800" level="INFO">${stdout} =  * Exiting ovs-vswitchd (889)
 * Exiting ovsdb-server (855)</msg>
<msg time="2026-07-28T01:57:06.299923" 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-07-28T01:57:06.034086" elapsed="0.265896"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:06.300515" elapsed="0.000564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.302371" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:06.301666" elapsed="0.000840"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:06.303073" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:06.302745" elapsed="0.000440"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.302642" 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-07-28T01:57:06.303665" elapsed="0.000072"/>
</return>
<status status="PASS" start="2026-07-28T01:57:06.303373" elapsed="0.000446"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.303326" elapsed="0.000566"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:06.303974" 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">
<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-07-28T01:57:06.311342" elapsed="0.000171"/>
</kw>
<msg time="2026-07-28T01:57:06.311560" 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-07-28T01:57:06.310270" elapsed="0.001358"/>
</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-07-28T01:57:06.311807" elapsed="0.000024"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:06.312063" 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-07-28T01:57:06.304796" elapsed="0.007366"/>
</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-07-28T01:57:05.690059" elapsed="0.622202"/>
</kw>
<msg time="2026-07-28T01:57:06.312318" 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-07-28T01:57:05.689470" elapsed="0.622912"/>
</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-07-28T01:57:05.688956" elapsed="0.623523"/>
</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-07-28T01:57:06.314713" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:06.314346" elapsed="0.000429"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.314327" elapsed="0.000472"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.315080" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:06.315187" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:06.314956" elapsed="0.000259"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.315781" level="INFO">Attempting to execute command "sudo rm -rf /etc/openvswitch/conf.db" on remote system "10.30.171.224" 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-07-28T01:57:06.315373" elapsed="0.000457"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.316382" 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-07-28T01:57:06.315993" elapsed="0.000416"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.317293" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:06.317370" 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-07-28T01:57:06.317007" 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-07-28T01:57:06.317573" elapsed="0.000563"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.319050" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:06.663191" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:05 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:06.318723" elapsed="0.344628"/>
</kw>
<msg time="2026-07-28T01:57:06.663436" 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-07-28T01:57:06.318317" elapsed="0.345270"/>
</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-07-28T01:57:06.316651" elapsed="0.347055"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.664275" level="INFO">Executing command 'sudo rm -rf /etc/openvswitch/conf.db'.</msg>
<msg time="2026-07-28T01:57:06.676631" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:06.676957" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:06.677057" 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-07-28T01:57:06.663999" elapsed="0.013169"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:06.677598" elapsed="0.000562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.679633" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:06.678795" elapsed="0.001126"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:06.680405" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:06.680104" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.680055" elapsed="0.000618"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:06.681045" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-07-28T01:57:06.680798" elapsed="0.000381"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.680763" elapsed="0.000544"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:06.681390" elapsed="0.000037"/>
</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-07-28T01:57:06.688345" elapsed="0.000209"/>
</kw>
<msg time="2026-07-28T01:57:06.688600" 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-07-28T01:57:06.687784" elapsed="0.000880"/>
</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-07-28T01:57:06.688831" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:06.689049" elapsed="0.000032"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:06.682218" elapsed="0.006943"/>
</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-07-28T01:57:06.313835" elapsed="0.375431"/>
</kw>
<msg time="2026-07-28T01:57:06.689320" 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-07-28T01:57:06.313193" elapsed="0.376190"/>
</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-07-28T01:57:06.312702" elapsed="0.376820"/>
</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-07-28T01:57:06.691785" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:06.691426" elapsed="0.000416"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:06.691408" elapsed="0.000458"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.692214" level="INFO">index=3
host=10.30.171.224
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-07-28T01:57:06.692334" level="INFO">${current_ssh_connection} = index=3
host=10.30.171.224
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-07-28T01:57:06.692020" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.693013" level="INFO">Attempting to execute command "sudo /usr/share/openvswitch/scripts/ovs-ctl start" on remote system "10.30.171.224" 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-07-28T01:57:06.692578" elapsed="0.000483"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.693672" 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-07-28T01:57:06.693224" elapsed="0.000479"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:06.695158" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:06.695247" 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-07-28T01:57:06.694821" elapsed="0.000452"/>
</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-07-28T01:57:06.695543" elapsed="0.000383"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:06.697008" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:07.070743" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:06 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:06.696579" elapsed="0.374408"/>
</kw>
<msg time="2026-07-28T01:57:07.071072" 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-07-28T01:57:06.696130" elapsed="0.375036"/>
</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-07-28T01:57:06.694266" elapsed="0.377011"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:07.071813" level="INFO">Executing command 'sudo /usr/share/openvswitch/scripts/ovs-ctl start'.</msg>
<msg time="2026-07-28T01:57:07.235803" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:07.236070" 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-07-28T01:57:07.236173" level="INFO">${stderr} = 2026-07-28T01:57:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-07-28T01:57:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-07-28T01:57:07Z|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-07-28T01:57:07.071552" elapsed="0.164675"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:07.236666" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.238337" level="INFO">2026-07-28T01:57:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-07-28T01:57:07Z|00001|dns_resolve|WARN|Failed to read etc/hosts: syntax error
2026-07-28T01:57:07Z|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-07-28T01:57:07.237638" elapsed="0.000807"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:07.238948" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:07.238651" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.238600" elapsed="0.000501"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:07.239486" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-07-28T01:57:07.239220" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.239186" elapsed="0.000497"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:07.239760" 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-07-28T01:57:07.246882" elapsed="0.000284"/>
</kw>
<msg time="2026-07-28T01:57:07.247216" 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-07-28T01:57:07.245693" elapsed="0.001587"/>
</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-07-28T01:57:07.247446" elapsed="0.000119"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:07.247742" 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-07-28T01:57:07.240502" elapsed="0.007328"/>
</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-07-28T01:57:06.690902" elapsed="0.557020"/>
</kw>
<msg time="2026-07-28T01:57:07.247976" 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-07-28T01:57:06.690240" elapsed="0.557795"/>
</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-07-28T01:57:06.689734" elapsed="0.558378"/>
</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-07-28T01:57:03.265217" elapsed="3.982952"/>
</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-07-28T01:57:07.256268" elapsed="0.002079"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.254124" elapsed="0.004265"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.254104" elapsed="0.004310"/>
</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-07-28T01:57:07.260586" elapsed="0.002233"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.258491" elapsed="0.004370"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.258471" 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-07-28T01:57:07.265073" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.262941" elapsed="0.002239"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.262925" elapsed="0.002291"/>
</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-07-28T01:57:07.267773" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.265279" elapsed="0.002583"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.265262" elapsed="0.002635"/>
</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-07-28T01:57:07.253935" elapsed="0.014029"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.268897" 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-07-28T01:57:07.268536" elapsed="0.000426"/>
</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-07-28T01:57:07.272638" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.269584" elapsed="0.003286"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.269559" elapsed="0.003346"/>
</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-07-28T01:57:07.275804" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.272981" elapsed="0.002878"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.272958" elapsed="0.002925"/>
</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-07-28T01:57:07.269297" elapsed="0.006642"/>
</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-07-28T01:57:07.279173" level="INFO">Executing command '/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh'.</msg>
<msg time="2026-07-28T01:57:07.292028" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:07.292244" 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-07-28T01:57:07.279028" elapsed="0.013278"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.276504" elapsed="0.015902"/>
</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-07-28T01:57:07.292983" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.292506" elapsed="0.000612"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.276485" elapsed="0.016681"/>
</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-07-28T01:57:07.298309" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.293313" elapsed="0.005135"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.299672" 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-07-28T01:57:07.298945" elapsed="0.000786"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.298534" elapsed="0.001278"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.293265" elapsed="0.006595"/>
</if>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:07.299937" elapsed="0.000066"/>
</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-07-28T01:57:07.276233" elapsed="0.023979"/>
</kw>
<var name="${cmd}">/sbin/ifconfig -a | egrep '^s' | awk '{print "sudo ovs-vsctl del-br",$1}' | sh</var>
<status status="PASS" start="2026-07-28T01:57:07.268270" elapsed="0.032023"/>
</iter>
<var>${cmd}</var>
<value>@{cmd_list}</value>
<status status="PASS" start="2026-07-28T01:57:07.268052" elapsed="0.032311"/>
</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-07-28T01:57:07.251497" elapsed="0.049014"/>
</kw>
<arg>${test_switch}</arg>
<doc>will execute and command strings stored in switch.cleanup_cmds</doc>
<status status="PASS" start="2026-07-28T01:57:07.248340" elapsed="0.052296"/>
</kw>
<kw name="Close All Connections" owner="SSHLibrary">
<doc>Closes all open connections.</doc>
<status status="PASS" start="2026-07-28T01:57:07.300989" elapsed="0.000512"/>
</kw>
<kw name="Close All Connections" owner="Telnet">
<doc>Closes all open connections and empties the connection cache.</doc>
<status status="PASS" start="2026-07-28T01:57:07.301885" elapsed="0.000294"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:03.264937" elapsed="4.037444"/>
</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-07-28T01:56:46.127410" elapsed="21.175087"/>
</suite>
<status status="PASS" start="2026-07-28T01:56:30.795194" elapsed="36.508558"/>
</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-07-28T01:57:07.417987" 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-07-28T01:57:07.414384" elapsed="0.003635"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-07-28T01:57:07.418272" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:07.418112" elapsed="0.000206"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.418088" elapsed="0.000253"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.418853" 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-07-28T01:57:07.418516" elapsed="0.000381"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.419438" 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-07-28T01:57:07.419120" elapsed="0.000360"/>
</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-07-28T01:57:07.419993" elapsed="0.000284"/>
</kw>
<msg time="2026-07-28T01:57:07.420376" level="INFO">${status} = PASS</msg>
<msg time="2026-07-28T01:57:07.420423" 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-07-28T01:57:07.419652" elapsed="0.000794"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.421006" 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-07-28T01:57:07.420634" elapsed="0.000398"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.422082" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:07.421813" elapsed="0.000297"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.422556" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:07.422280" elapsed="0.000304"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.423041" 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-07-28T01:57:07.422746" elapsed="0.000322"/>
</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-07-28T01:57:07.426028" elapsed="0.000243"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.426777" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:07.426431" elapsed="0.000372"/>
</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-07-28T01:57:07.426960" elapsed="0.000300"/>
</kw>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.428078" 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-07-28T01:57:07.427781" elapsed="0.000331"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-07-28T01:57:07.428158" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:57:07.428321" 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-07-28T01:57:07.427481" elapsed="0.000869"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:07.429000" level="INFO">Creating Session using : alias=ClusterManagement__session_1, url=http://10.30.170.50:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868a35bc8d0&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-07-28T01:57:07.428525" elapsed="0.000617"/>
</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-07-28T01:57:07.429308" elapsed="0.000208"/>
</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-07-28T01:57:07.425468" elapsed="0.004110"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:57:07.425267" elapsed="0.004356"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="PASS" start="2026-07-28T01:57:07.423125" elapsed="0.006531"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.430397" 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-07-28T01:57:07.429820" elapsed="0.000624"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.431015" level="INFO">${ClusterManagement__index_to_ip_mapping} = {1: '10.30.170.50'}</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-07-28T01:57:07.430633" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.431611" 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-07-28T01:57:07.431236" elapsed="0.000419"/>
</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-07-28T01:57:07.421332" elapsed="0.010383"/>
</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-07-28T01:57:07.414031" elapsed="0.017739"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:07.432162" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b029e310&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-07-28T01:57:07.431918" elapsed="0.000422"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.432887" 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-07-28T01:57:07.432570" elapsed="0.000344"/>
</kw>
<kw name="Convert To Integer" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.433409" 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-07-28T01:57:07.433105" elapsed="0.000330"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.433971" 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-07-28T01:57:07.433613" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.434549" 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-07-28T01:57:07.434173" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.436880" 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-07-28T01:57:07.434735" elapsed="0.002172"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.437437" 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-07-28T01:57:07.437069" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.437951" 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-07-28T01:57:07.437647" elapsed="0.000346"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.438477" 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-07-28T01:57:07.438167" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.438980" 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-07-28T01:57:07.438680" elapsed="0.000342"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.439495" 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-07-28T01:57:07.439181" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.439991" 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-07-28T01:57:07.439694" elapsed="0.000338"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.440503" 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-07-28T01:57:07.440190" elapsed="0.000355"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.444580" 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-07-28T01:57:07.440702" elapsed="0.003924"/>
</kw>
<doc>Create controller session and set variables.</doc>
<status status="PASS" start="2026-07-28T01:57:07.413660" elapsed="0.031026"/>
</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-07-28T01:57:07.447912" 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-07-28T01:57:07.447518" elapsed="0.000422"/>
</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-07-28T01:57:07.489753" 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-07-28T01:57:07.489360" elapsed="0.000421"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.490586" 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-07-28T01:57:07.490305" elapsed="0.000362">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-07-28T01:57:07.490766" 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-07-28T01:57:07.489947" elapsed="0.000843"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.491345" 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-07-28T01:57:07.490957" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.491688" 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-07-28T01:57:07.491850" 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-07-28T01:57:07.491550" elapsed="0.000325"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.492318" 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-07-28T01:57:07.492067" elapsed="0.000296"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.493342" 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-07-28T01:57:07.493086" elapsed="0.000301"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.493824" 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-07-28T01:57:07.493563" elapsed="0.000286"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.494608" 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-07-28T01:57:07.494237" elapsed="0.000397"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:07.495638" 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-07-28T01:57:07.495165" elapsed="0.000500"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:07.495716" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:07.495871" 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-07-28T01:57:07.494821" elapsed="0.001075"/>
</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-07-28T01:57:07.496048" elapsed="0.000274"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:57:07.494066" elapsed="0.002298"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:07.493898" elapsed="0.002502"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:07.496444" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:57:07.496620" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:07.492752" elapsed="0.003893"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.492435" elapsed="0.004241"/>
</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-07-28T01:57:07.496854" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.496702" elapsed="0.000208"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.492415" elapsed="0.004515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.501143" 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-07-28T01:57:07.497079" elapsed="0.004093"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.501222" elapsed="0.000030"/>
</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-07-28T01:57:07.488745" elapsed="0.012606"/>
</kw>
<msg time="2026-07-28T01:57:07.501405" 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-07-28T01:57:07.476411" elapsed="0.025058"/>
</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-07-28T01:57:07.513651" 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-07-28T01:57:07.525659" 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-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-07-28T01:57:07.537624" 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-07-28T01:57:07.537856" 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-07-28T01:57:07.538032" 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-07-28T01:57:07.538424" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.538276" elapsed="0.000218"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:07.538261" elapsed="0.000258"/>
</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-07-28T01:57:07.538663" 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-07-28T01:57:07.538831" 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-07-28T01:57:07.538997" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:07.538232" elapsed="0.000817"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:07.538128" elapsed="0.000948"/>
</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-07-28T01:57:07.539224" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:07.539299" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:57:07.539415" 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-07-28T01:57:07.472241" elapsed="0.067200"/>
</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-07-28T01:57:07.550167" elapsed="0.000356"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.563552" 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-07-28T01:57:07.563144" elapsed="0.000436"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.564296" 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-07-28T01:57:07.564083" elapsed="0.000280">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-07-28T01:57:07.564470" 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-07-28T01:57:07.563745" elapsed="0.000752"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.565051" 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-07-28T01:57:07.564664" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.565377" 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-07-28T01:57:07.565525" 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-07-28T01:57:07.565242" elapsed="0.000309"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.565954" 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-07-28T01:57:07.565709" elapsed="0.000290"/>
</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-07-28T01:57:07.566385" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.566091" elapsed="0.000353"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.566932" 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-07-28T01:57:07.566634" elapsed="0.000325"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.566484" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.566047" elapsed="0.001008"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.567660" 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-07-28T01:57:07.567206" elapsed="0.000482"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.567738" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:07.567892" 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-07-28T01:57:07.562528" elapsed="0.005390"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.581225" 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-07-28T01:57:07.580844" elapsed="0.000409"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.581978" 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-07-28T01:57:07.581770" elapsed="0.000272">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-07-28T01:57:07.582156" 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-07-28T01:57:07.581416" elapsed="0.000765"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.582747" 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-07-28T01:57:07.582346" elapsed="0.000428"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.583068" 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-07-28T01:57:07.583195" 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-07-28T01:57:07.582935" elapsed="0.000285"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.583637" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:07.583375" 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-07-28T01:57:07.584043" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.583747" elapsed="0.000355"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.584577" 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-07-28T01:57:07.584272" elapsed="0.000331"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.584126" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.583729" elapsed="0.000931"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.585231" 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-07-28T01:57:07.584805" elapsed="0.000452"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.585304" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:07.585472" 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-07-28T01:57:07.580206" elapsed="0.005292"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.598802" 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-07-28T01:57:07.598409" elapsed="0.000422"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.599632" 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-07-28T01:57:07.599357" elapsed="0.000341">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-07-28T01:57:07.599791" 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-07-28T01:57:07.599017" elapsed="0.000798"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.600366" 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-07-28T01:57:07.599979" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.600707" 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-07-28T01:57:07.600846" 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-07-28T01:57:07.600571" elapsed="0.000301"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.601279" 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-07-28T01:57:07.601034" elapsed="0.000293"/>
</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-07-28T01:57:07.601715" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.601407" elapsed="0.000368"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.602275" 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-07-28T01:57:07.601947" elapsed="0.000354"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.601800" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.601387" elapsed="0.000971"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.603108" 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-07-28T01:57:07.602520" elapsed="0.000616"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.603183" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:07.603339" 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-07-28T01:57:07.597802" elapsed="0.005563"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.603789" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:07.603546" elapsed="0.000269"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.604339" 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-07-28T01:57:07.603972" elapsed="0.000393"/>
</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-07-28T01:57:07.605007" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.604768" elapsed="0.000296"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.604754" elapsed="0.000335"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.605601" 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-07-28T01:57:07.605232" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.606404" 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-07-28T01:57:07.605784" 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-07-28T01:57:07.606755" elapsed="0.000196"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:07.604722" 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-07-28T01:57:07.607650" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.607389" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.607374" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.608407" 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-07-28T01:57:07.608052" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.609204" 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-07-28T01:57:07.608609" 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-07-28T01:57:07.609391" elapsed="0.000204"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:07.607341" 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-07-28T01:57:07.610078" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.609816" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.609801" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.610845" 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-07-28T01:57:07.610491" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.611725" 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-07-28T01:57:07.611027" elapsed="0.000727"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.611911" elapsed="0.000202"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:07.609770" 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-07-28T01:57:07.612594" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.612336" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.612321" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.613404" 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-07-28T01:57:07.612996" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.614275" 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-07-28T01:57:07.613608" elapsed="0.000695"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.614477" elapsed="0.000188"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:07.612290" elapsed="0.002413"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.615125" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.614884" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.614869" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.615909" 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-07-28T01:57:07.615552" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.616705" 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-07-28T01:57:07.616100" 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-07-28T01:57:07.616894" elapsed="0.000187"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:07.614839" 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-07-28T01:57:07.617576" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.617306" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.617289" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.618359" 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-07-28T01:57:07.617977" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.619148" 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-07-28T01:57:07.618561" 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-07-28T01:57:07.619374" elapsed="0.000209"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:07.617258" 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-07-28T01:57:07.620062" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.619813" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.619797" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.620840" 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-07-28T01:57:07.620477" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.621636" 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-07-28T01:57:07.621026" 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-07-28T01:57:07.621824" elapsed="0.000201"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:07.619763" elapsed="0.002329"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.622542" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.622284" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.622269" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.623292" 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-07-28T01:57:07.622939" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.624071" 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-07-28T01:57:07.623491" 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-07-28T01:57:07.624256" elapsed="0.000218"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:07.622237" 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-07-28T01:57:07.625113" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.624858" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.624843" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.625903" 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-07-28T01:57:07.625540" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.626734" 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-07-28T01:57:07.626125" 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-07-28T01:57:07.626921" elapsed="0.000188"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:07.624809" elapsed="0.002339"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.627600" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.627337" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.627322" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.628362" 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-07-28T01:57:07.628002" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.629150" 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-07-28T01:57:07.628563" 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-07-28T01:57:07.629336" elapsed="0.000207"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:07.627290" 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-07-28T01:57:07.630014" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.629771" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.629755" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.630819" 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-07-28T01:57:07.630441" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.631657" 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-07-28T01:57:07.631043" 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-07-28T01:57:07.631846" elapsed="0.000189"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:07.629723" 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-07-28T01:57:07.632521" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.632261" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.632245" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.633283" 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-07-28T01:57:07.632921" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.634108" 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-07-28T01:57:07.633483" 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-07-28T01:57:07.634299" elapsed="0.000204"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:07.632214" elapsed="0.002329"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.634974" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.634731" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.634715" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.635750" 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-07-28T01:57:07.635371" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.636536" 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-07-28T01:57:07.635935" 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-07-28T01:57:07.636730" elapsed="0.000186"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:07.634685" 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-07-28T01:57:07.637391" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.637142" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.637126" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.638201" 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-07-28T01:57:07.637804" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.638981" 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-07-28T01:57:07.638382" 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-07-28T01:57:07.639162" elapsed="0.000181"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:07.637095" 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-07-28T01:57:07.639817" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.639580" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.639565" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.640578" 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-07-28T01:57:07.640207" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.641356" 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-07-28T01:57:07.640760" 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-07-28T01:57:07.641557" elapsed="0.000184"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:07.639533" 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-07-28T01:57:07.642412" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.642115" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.642100" elapsed="0.000586"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.643186" 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-07-28T01:57:07.642831" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.643968" 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-07-28T01:57:07.643367" 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-07-28T01:57:07.644152" elapsed="0.000192"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:07.642066" elapsed="0.002315"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.644831" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.644587" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.644572" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.645597" 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-07-28T01:57:07.645224" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.646388" 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-07-28T01:57:07.645779" 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-07-28T01:57:07.646593" elapsed="0.000187"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:07.644540" 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-07-28T01:57:07.647248" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.647005" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.646987" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.648059" 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-07-28T01:57:07.647698" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.648845" 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-07-28T01:57:07.648242" 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-07-28T01:57:07.649031" elapsed="0.000187"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:07.646956" 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-07-28T01:57:07.649705" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.649444" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.649429" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.650535" 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-07-28T01:57:07.650153" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.651312" 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-07-28T01:57:07.650721" 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-07-28T01:57:07.651513" elapsed="0.000188"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:07.649397" 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-07-28T01:57:07.652169" elapsed="0.000268"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.651927" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.651910" elapsed="0.000609"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.653027" 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-07-28T01:57:07.652669" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.653825" 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-07-28T01:57:07.653210" 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-07-28T01:57:07.654105" elapsed="0.000203"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:07.651878" elapsed="0.002469"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.654798" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.654554" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.654538" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.655571" 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-07-28T01:57:07.655194" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.656345" 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-07-28T01:57:07.655756" 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-07-28T01:57:07.656554" elapsed="0.000189"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:07.654505" 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-07-28T01:57:07.657220" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.656971" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.656955" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.657995" 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-07-28T01:57:07.657638" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.658812" 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-07-28T01:57:07.658212" 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-07-28T01:57:07.658995" elapsed="0.000188"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:07.656923" 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-07-28T01:57:07.659786" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.659545" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.659531" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.660569" 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-07-28T01:57:07.660182" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.661345" 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-07-28T01:57:07.660757" 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-07-28T01:57:07.661550" elapsed="0.000188"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:07.659498" 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-07-28T01:57:07.662260" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.661964" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.661948" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.663044" 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-07-28T01:57:07.662682" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.663884" 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-07-28T01:57:07.663228" elapsed="0.000687"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.664074" elapsed="0.000189"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:07.661917" 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-07-28T01:57:07.664887" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.664547" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.664528" elapsed="0.000641"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.665753" 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-07-28T01:57:07.665319" elapsed="0.000465"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.666828" 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-07-28T01:57:07.666047" elapsed="0.000825"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.667049" elapsed="0.000193"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:07.664483" elapsed="0.002797"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.667744" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.667484" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.667452" elapsed="0.000579"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.668562" 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-07-28T01:57:07.668178" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.669480" 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-07-28T01:57:07.668774" elapsed="0.000737"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.669671" elapsed="0.000213"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:07.667420" elapsed="0.002519"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.670527" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.670227" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.670207" elapsed="0.000620"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.671429" 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-07-28T01:57:07.671027" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.672271" 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-07-28T01:57:07.671640" 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-07-28T01:57:07.672470" elapsed="0.000189"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:07.670170" elapsed="0.002526"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.673121" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.672880" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.672864" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.673885" 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-07-28T01:57:07.673529" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.674718" 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-07-28T01:57:07.674111" 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-07-28T01:57:07.674914" elapsed="0.000187"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:07.672833" 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-07-28T01:57:07.675585" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.675325" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.675310" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.676339" 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-07-28T01:57:07.675981" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.677120" 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-07-28T01:57:07.676536" 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-07-28T01:57:07.677301" elapsed="0.000200"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:07.675279" 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-07-28T01:57:07.679095" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.678846" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.678830" elapsed="0.000570"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.679934" 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-07-28T01:57:07.679567" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.680740" 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-07-28T01:57:07.680128" 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-07-28T01:57:07.680928" elapsed="0.000188"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:07.678796" 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-07-28T01:57:07.681600" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.681340" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.681324" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.682386" 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-07-28T01:57:07.681998" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.683175" 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-07-28T01:57:07.682591" 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-07-28T01:57:07.683360" elapsed="0.000204"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:07.681293" 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-07-28T01:57:07.684028" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.683787" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.683771" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.684807" 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-07-28T01:57:07.684423" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.685600" 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-07-28T01:57:07.684993" 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-07-28T01:57:07.685789" elapsed="0.000186"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:07.683740" 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-07-28T01:57:07.686509" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.686247" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.686231" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.687270" 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-07-28T01:57:07.686910" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.688081" 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-07-28T01:57:07.687469" 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-07-28T01:57:07.688268" elapsed="0.000203"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:07.686199" 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-07-28T01:57:07.688943" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.688699" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.688683" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.689716" 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-07-28T01:57:07.689337" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.690543" 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-07-28T01:57:07.689901" 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-07-28T01:57:07.690729" elapsed="0.000186"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:07.688652" elapsed="0.002339"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.691427" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.691183" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.691168" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.692200" 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-07-28T01:57:07.691841" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.692990" 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-07-28T01:57:07.692385" 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-07-28T01:57:07.693176" elapsed="0.000185"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:07.691136" 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-07-28T01:57:07.693847" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.693603" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.693588" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.694646" 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-07-28T01:57:07.694265" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.695472" 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-07-28T01:57:07.694832" 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-07-28T01:57:07.695661" elapsed="0.000320"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:07.693555" elapsed="0.002466"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.696470" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.696208" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.696192" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.697235" 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-07-28T01:57:07.696874" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.698068" 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-07-28T01:57:07.697421" 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-07-28T01:57:07.698257" elapsed="0.000188"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:07.696161" elapsed="0.002339"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.698939" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.698686" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.698671" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.699773" 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-07-28T01:57:07.699371" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.700566" 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-07-28T01:57:07.699961" 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-07-28T01:57:07.700754" elapsed="0.000187"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:07.698640" elapsed="0.002338"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.701412" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.701169" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.701153" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.702223" 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-07-28T01:57:07.701827" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.703009" 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-07-28T01:57:07.702406" 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-07-28T01:57:07.703235" elapsed="0.000185"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:07.701122" elapsed="0.002350"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.703902" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.703660" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.703645" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.704736" 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-07-28T01:57:07.704360" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.705515" 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-07-28T01:57:07.704918" 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-07-28T01:57:07.705700" elapsed="0.000183"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:07.703613" 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-07-28T01:57:07.706368" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.706128" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.706113" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.707135" 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-07-28T01:57:07.706779" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.707946" 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-07-28T01:57:07.707316" 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-07-28T01:57:07.708132" elapsed="0.000185"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:07.706081" 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-07-28T01:57:07.708797" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.708558" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.708543" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.709553" 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-07-28T01:57:07.709187" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.710348" 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-07-28T01:57:07.709733" 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-07-28T01:57:07.710550" elapsed="0.000186"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:07.708511" 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-07-28T01:57:07.711203" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.710961" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.710944" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.711976" 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-07-28T01:57:07.711621" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.712908" 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-07-28T01:57:07.712163" 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-07-28T01:57:07.713094" elapsed="0.000185"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:07.710913" 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-07-28T01:57:07.713903" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.713660" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.713644" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.714837" 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-07-28T01:57:07.714325" elapsed="0.000579"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.715678" 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-07-28T01:57:07.715067" 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-07-28T01:57:07.715866" elapsed="0.000186"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:07.713611" elapsed="0.002479"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.716532" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.716275" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.716260" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.717294" 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-07-28T01:57:07.716930" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.718128" 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-07-28T01:57:07.717493" 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-07-28T01:57:07.718317" elapsed="0.000206"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:07.716229" 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-07-28T01:57:07.718994" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.718750" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.718735" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.719780" 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-07-28T01:57:07.719393" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.720586" 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-07-28T01:57:07.719967" 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-07-28T01:57:07.720775" elapsed="0.000206"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:07.718703" 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-07-28T01:57:07.721472" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.721210" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.721195" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.722273" 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-07-28T01:57:07.721872" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.723072" 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-07-28T01:57:07.722480" 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-07-28T01:57:07.723259" elapsed="0.000186"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:07.721163" elapsed="0.002336"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.723931" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.723689" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.723673" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.724701" 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-07-28T01:57:07.724325" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.725479" 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-07-28T01:57:07.724882" 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-07-28T01:57:07.725666" elapsed="0.000184"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:07.723641" 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-07-28T01:57:07.726373" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.726090" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.726074" elapsed="0.000576"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.727159" 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-07-28T01:57:07.726796" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.727955" 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-07-28T01:57:07.727343" 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-07-28T01:57:07.728142" elapsed="0.000188"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:07.726041" 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-07-28T01:57:07.728853" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.728580" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.728564" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.729759" 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-07-28T01:57:07.729259" elapsed="0.000527"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.730588" 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-07-28T01:57:07.729945" elapsed="0.000672"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.730775" elapsed="0.000186"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:07.728532" elapsed="0.002466"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.731508" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.731207" elapsed="0.000565"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.731190" elapsed="0.000611"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.732353" 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-07-28T01:57:07.731975" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.733156" 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-07-28T01:57:07.732555" 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-07-28T01:57:07.733342" elapsed="0.000206"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:07.731153" elapsed="0.002433"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.734041" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.733772" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.733757" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.734815" 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-07-28T01:57:07.734440" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.735603" 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-07-28T01:57:07.734998" 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-07-28T01:57:07.735789" elapsed="0.000184"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:07.733725" 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-07-28T01:57:07.736439" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.736198" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.736183" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.737209" 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-07-28T01:57:07.736851" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.738019" 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-07-28T01:57:07.737394" 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-07-28T01:57:07.738256" elapsed="0.000190"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:07.736151" elapsed="0.002350"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.738935" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.738691" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.738675" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.739715" 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-07-28T01:57:07.739334" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.740519" 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-07-28T01:57:07.739910" 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-07-28T01:57:07.740708" elapsed="0.000187"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:07.738643" 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-07-28T01:57:07.741365" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.741123" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.741107" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.742188" 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-07-28T01:57:07.741780" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.742977" 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-07-28T01:57:07.742374" 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-07-28T01:57:07.743164" elapsed="0.000184"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:07.741076" elapsed="0.002311"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.743832" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.743591" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.743576" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.744600" 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-07-28T01:57:07.744227" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.745371" 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-07-28T01:57:07.744783" 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-07-28T01:57:07.745574" elapsed="0.000185"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:07.743544" 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-07-28T01:57:07.746250" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.746004" elapsed="0.000612"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.745967" elapsed="0.000674"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.747141" 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-07-28T01:57:07.746785" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.747930" 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-07-28T01:57:07.747322" 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-07-28T01:57:07.748119" elapsed="0.000185"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:07.745936" elapsed="0.002489"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.748879" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.748633" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.748618" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.749912" 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-07-28T01:57:07.749352" elapsed="0.000590"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.750789" 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-07-28T01:57:07.750169" 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-07-28T01:57:07.750980" elapsed="0.000241"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:07.748585" elapsed="0.002676"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.751712" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.751465" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.751434" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.752482" 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-07-28T01:57:07.752108" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.753258" 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-07-28T01:57:07.752670" 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-07-28T01:57:07.753443" elapsed="0.000203"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:07.751403" 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-07-28T01:57:07.754192" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.753871" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.753855" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.754998" 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-07-28T01:57:07.754639" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.755779" 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-07-28T01:57:07.755180" 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-07-28T01:57:07.755965" elapsed="0.000182"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:07.753824" 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-07-28T01:57:07.756624" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.756366" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.756351" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.757374" 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-07-28T01:57:07.757020" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.758200" 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-07-28T01:57:07.757572" 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-07-28T01:57:07.758385" elapsed="0.000202"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:07.756320" 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-07-28T01:57:07.759049" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.758810" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.758793" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.759823" 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-07-28T01:57:07.759443" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.760609" 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-07-28T01:57:07.760006" 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-07-28T01:57:07.760794" elapsed="0.000183"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:07.758763" 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-07-28T01:57:07.761439" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.761199" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.761184" elapsed="0.000566"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.762303" 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-07-28T01:57:07.761899" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.763192" 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-07-28T01:57:07.762505" elapsed="0.000727"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.763471" elapsed="0.000263"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:07.761153" elapsed="0.002634"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.764584" elapsed="0.000270"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.764042" elapsed="0.000870"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.764021" elapsed="0.000926"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.765675" 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-07-28T01:57:07.765153" elapsed="0.000559"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.766821" 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-07-28T01:57:07.765932" elapsed="0.000929"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.767089" elapsed="0.000261"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:07.763978" elapsed="0.003426"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.768022" elapsed="0.000258"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.767685" elapsed="0.000649"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.767664" elapsed="0.000704"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.769089" 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-07-28T01:57:07.768591" elapsed="0.000535"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.770222" 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-07-28T01:57:07.769344" elapsed="0.000919"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.770504" elapsed="0.000262"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:07.767620" elapsed="0.003198"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.771334" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.771083" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.771065" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.772094" 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-07-28T01:57:07.771741" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.772874" 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-07-28T01:57:07.772275" 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-07-28T01:57:07.773063" elapsed="0.000186"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:07.771020" 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-07-28T01:57:07.773728" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.773487" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.773470" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.774547" 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-07-28T01:57:07.774171" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.775310" 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-07-28T01:57:07.774730" 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-07-28T01:57:07.775509" elapsed="0.000186"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:07.773424" 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-07-28T01:57:07.776215" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.775965" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.775949" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.776987" 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-07-28T01:57:07.776629" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.777770" 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-07-28T01:57:07.777169" 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-07-28T01:57:07.777956" elapsed="0.000205"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:07.775912" 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-07-28T01:57:07.778642" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.778382" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.778367" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.779386" 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-07-28T01:57:07.779033" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.780169" 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-07-28T01:57:07.779585" 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-07-28T01:57:07.780351" elapsed="0.000200"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:07.778337" 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-07-28T01:57:07.781011" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.780772" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.780755" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.781776" 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-07-28T01:57:07.781404" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.782617" 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-07-28T01:57:07.781959" elapsed="0.000687"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.782803" elapsed="0.000185"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:07.780725" elapsed="0.002301"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.783589" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.783325" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.783193" elapsed="0.000646"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.784343" 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-07-28T01:57:07.783984" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.785174" 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-07-28T01:57:07.784578" 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-07-28T01:57:07.785366" elapsed="0.000203"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:07.783162" elapsed="0.002444"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.786081" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.785786" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.785771" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.786859" 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-07-28T01:57:07.786499" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.787645" 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-07-28T01:57:07.787041" 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-07-28T01:57:07.787873" elapsed="0.000187"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:07.785740" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.788584" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.788318" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.788298" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.789333" 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-07-28T01:57:07.788979" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.790137" 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-07-28T01:57:07.789529" 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-07-28T01:57:07.790323" elapsed="0.000202"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:07.788262" elapsed="0.002301"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.790989" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.790746" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.790730" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.791758" 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-07-28T01:57:07.791381" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.792537" 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-07-28T01:57:07.791941" 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-07-28T01:57:07.792722" elapsed="0.000184"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:07.790699" 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-07-28T01:57:07.793365" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.793125" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.793109" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.794176" 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-07-28T01:57:07.793774" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.794966" 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-07-28T01:57:07.794360" 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-07-28T01:57:07.795212" elapsed="0.000186"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:07.793079" 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-07-28T01:57:07.795880" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.795639" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.795623" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.796654" 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-07-28T01:57:07.796272" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.797418" 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-07-28T01:57:07.796838" 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-07-28T01:57:07.797620" elapsed="0.000184"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:07.795592" 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-07-28T01:57:07.798307" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.798065" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.798050" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.799073" 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-07-28T01:57:07.798715" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.799897" 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-07-28T01:57:07.799294" 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-07-28T01:57:07.800082" elapsed="0.000185"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:07.798017" 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-07-28T01:57:07.800869" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.800620" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.800491" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.801641" 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-07-28T01:57:07.801269" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.802437" 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-07-28T01:57:07.801827" 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-07-28T01:57:07.802642" elapsed="0.000185"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:07.800443" elapsed="0.002422"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.803289" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.803050" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.803035" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.804051" 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-07-28T01:57:07.803700" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.804827" 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-07-28T01:57:07.804233" 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-07-28T01:57:07.805011" elapsed="0.000184"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:07.803004" 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-07-28T01:57:07.805675" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.805416" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.805401" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.806474" 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-07-28T01:57:07.806101" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.807235" 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-07-28T01:57:07.806658" 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-07-28T01:57:07.807420" elapsed="0.000201"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:07.805370" 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-07-28T01:57:07.808079" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.807840" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.807825" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.808839" 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-07-28T01:57:07.808484" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.809612" 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-07-28T01:57:07.809018" 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-07-28T01:57:07.809795" elapsed="0.000200"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:07.807795" 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-07-28T01:57:07.810510" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.810214" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.810200" elapsed="0.000565"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.811294" 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-07-28T01:57:07.810911" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.812076" 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-07-28T01:57:07.811493" 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-07-28T01:57:07.812262" elapsed="0.000185"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:07.810169" 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-07-28T01:57:07.812926" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.812686" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.812671" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.813687" 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-07-28T01:57:07.813314" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.814514" 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-07-28T01:57:07.813868" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.814700" elapsed="0.000183"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:07.812640" 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-07-28T01:57:07.815343" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.815104" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.815088" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.816102" 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-07-28T01:57:07.815752" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.816878" 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-07-28T01:57:07.816281" 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-07-28T01:57:07.817062" elapsed="0.000180"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:07.815057" 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-07-28T01:57:07.817876" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.817618" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.817447" elapsed="0.000710"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.818675" 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-07-28T01:57:07.818302" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.819435" 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-07-28T01:57:07.818857" 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-07-28T01:57:07.819636" elapsed="0.000185"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:07.817415" elapsed="0.002444"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.820278" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.820040" elapsed="0.000596"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.820026" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.821162" 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-07-28T01:57:07.820806" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.822075" 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-07-28T01:57:07.821343" elapsed="0.000760"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.822297" elapsed="0.000205"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:07.819995" elapsed="0.002546"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.822963" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.822724" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.822709" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.823734" 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-07-28T01:57:07.823356" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.824574" 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-07-28T01:57:07.823918" elapsed="0.000684"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.824759" elapsed="0.000185"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:07.822678" 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-07-28T01:57:07.825403" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.825164" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.825150" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.826202" 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-07-28T01:57:07.825814" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.826989" 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-07-28T01:57:07.826386" 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-07-28T01:57:07.827177" elapsed="0.000184"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:07.825119" 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-07-28T01:57:07.827841" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.827603" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.827588" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.828598" 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-07-28T01:57:07.828230" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.829358" 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-07-28T01:57:07.828780" 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-07-28T01:57:07.829559" elapsed="0.000186"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:07.827557" 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-07-28T01:57:07.830245" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.830003" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.829984" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.831008" 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-07-28T01:57:07.830656" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.831784" 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-07-28T01:57:07.831189" 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-07-28T01:57:07.831968" elapsed="0.000182"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:07.829919" 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-07-28T01:57:07.832623" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.832368" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.832353" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.833365" 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-07-28T01:57:07.833013" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.834212" 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-07-28T01:57:07.833604" 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-07-28T01:57:07.834396" elapsed="0.000202"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:07.832322" elapsed="0.002314"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.835176" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.834930" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.834804" elapsed="0.000621"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.835947" 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-07-28T01:57:07.835585" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.836734" 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-07-28T01:57:07.836133" 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-07-28T01:57:07.836920" elapsed="0.000186"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:07.834773" elapsed="0.002370"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.837581" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.837325" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.837310" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.838375" 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-07-28T01:57:07.838016" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.839154" 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-07-28T01:57:07.838574" 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-07-28T01:57:07.839339" elapsed="0.000199"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:07.837279" 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-07-28T01:57:07.839998" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.839758" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.839743" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.840753" 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-07-28T01:57:07.840384" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.841527" 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-07-28T01:57:07.840934" 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-07-28T01:57:07.841712" elapsed="0.000183"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:07.839711" 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-07-28T01:57:07.842381" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.842142" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.842127" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.843139" 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-07-28T01:57:07.842787" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.843912" 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-07-28T01:57:07.843318" 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-07-28T01:57:07.844100" elapsed="0.000182"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:07.842096" 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-07-28T01:57:07.844765" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.844526" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.844511" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.845569" 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-07-28T01:57:07.845191" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.846378" 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-07-28T01:57:07.845753" 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-07-28T01:57:07.846581" elapsed="0.000184"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:07.844477" 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-07-28T01:57:07.847220" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.846981" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.846967" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.847974" 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-07-28T01:57:07.847623" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.848744" 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-07-28T01:57:07.848155" 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-07-28T01:57:07.848929" elapsed="0.000186"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:07.846936" 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-07-28T01:57:07.849581" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.849330" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.849316" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.850351" 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-07-28T01:57:07.849997" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.851131" 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-07-28T01:57:07.850550" 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-07-28T01:57:07.851314" elapsed="0.000197"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:07.849286" 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-07-28T01:57:07.852084" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.851840" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.851714" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.852843" 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-07-28T01:57:07.852490" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.853614" 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-07-28T01:57:07.853023" 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-07-28T01:57:07.853798" elapsed="0.000198"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:07.851684" elapsed="0.002350"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:07.854466" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.854213" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.854198" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.855207" 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-07-28T01:57:07.854858" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.856001" 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-07-28T01:57:07.855390" 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-07-28T01:57:07.856185" elapsed="0.000183"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:07.854167" elapsed="0.002272"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:07.604423" elapsed="0.252065"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.857801" 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-07-28T01:57:07.856651" elapsed="0.001178"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.857892" elapsed="0.000077"/>
</return>
<msg time="2026-07-28T01:57:07.858124" 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-07-28T01:57:07.549284" elapsed="0.308868"/>
</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-07-28T01:57:07.859563" 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-07-28T01:57:07.859252" elapsed="0.000390">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-07-28T01:57:07.859737" 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-07-28T01:57:07.858904" elapsed="0.000857"/>
</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-07-28T01:57:07.860083" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.859832" elapsed="0.000311"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.860686" 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-07-28T01:57:07.860366" elapsed="0.000346"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.860167" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.859814" elapsed="0.000954"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.863174" 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-07-28T01:57:07.860923" elapsed="0.002279"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:07.863255" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:07.863412" 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-07-28T01:57:07.858546" elapsed="0.004891"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.864989" 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-07-28T01:57:07.864734" elapsed="0.000306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.865428" 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-07-28T01:57:07.865193" elapsed="0.000767"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.866376" 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-07-28T01:57:07.866125" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.866830" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:07.866589" elapsed="0.000284"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:07.867999" 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-07-28T01:57:07.867712" elapsed="0.000323"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:07.868509" 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-07-28T01:57:07.868249" elapsed="0.000298"/>
</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-07-28T01:57:07.868757" elapsed="0.000263"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.869599" 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-07-28T01:57:07.869236" elapsed="0.000423"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:07.869718" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:57:07.869979" 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-07-28T01:57:07.867122" elapsed="0.002896"/>
</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-07-28T01:57:07.918556" level="INFO">POST Request : url=http://10.30.170.50: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-07-28T01:57:07.918922" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Set-Cookie': 'JSESSIONID=node01tg73y1m9jk1c1nlr16dd0pwb812.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:57:07 GMT; SameSite=lax', 'Expires': 'Thu, 01 Jan 1970 00:00:00 GMT', 'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:07.919180" 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-07-28T01:57:07.873209" elapsed="0.046031"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.870338" elapsed="0.049014"/>
</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-07-28T01:57:07.919831" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.919419" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.870092" elapsed="0.049948"/>
</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-07-28T01:57:07.927450" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:07.922555" elapsed="0.004978"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.922001" elapsed="0.005583"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.921956" elapsed="0.005662"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.931166" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:07.928013" elapsed="0.003217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.927697" elapsed="0.003583"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.927674" elapsed="0.003640"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.932155" 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-07-28T01:57:07.931597" 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-07-28T01:57:07.932667" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.932292" elapsed="0.000457"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.933481" 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-07-28T01:57:07.933025" elapsed="0.000498"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.932782" elapsed="0.000793"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.932267" elapsed="0.001338"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.934396" 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-07-28T01:57:07.933851" elapsed="0.000582"/>
</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-07-28T01:57:07.934907" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.934557" elapsed="0.000430"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.935696" 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-07-28T01:57:07.935261" elapsed="0.000472"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.935019" elapsed="0.000764"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.934531" elapsed="0.001281"/>
</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-07-28T01:57:07.936026" elapsed="0.000510"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:07.937345" 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-07-28T01:57:07.936769" elapsed="0.000614"/>
</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-07-28T01:57:07.937627" elapsed="0.002950"/>
</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-07-28T01:57:07.920904" elapsed="0.019738"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:07.940824" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:07.940716" elapsed="0.000153"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.940697" elapsed="0.000194"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:07.944243" 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-07-28T01:57:07.941044" elapsed="0.003231"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:07.944329" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:57:07.944533" 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-07-28T01:57:07.863785" elapsed="0.080778"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.944688" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:07.944849" 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-07-28T01:57:07.461424" elapsed="0.483451"/>
</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-07-28T01:57:07.945234" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.944982" elapsed="0.000322"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.944965" elapsed="0.000363"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.945360" 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-07-28T01:57:07.458896" elapsed="0.486608"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:07.447354" elapsed="0.498196"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.946257" 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-07-28T01:57:07.945801" elapsed="0.000484"/>
</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-07-28T01:57:07.988193" 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-07-28T01:57:07.987811" elapsed="0.000411"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.989009" 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-07-28T01:57:07.988747" elapsed="0.000341">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-07-28T01:57:07.989185" 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-07-28T01:57:07.988388" elapsed="0.000821"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.989779" 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-07-28T01:57:07.989375" elapsed="0.000431"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:07.990147" 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-07-28T01:57:07.990305" 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-07-28T01:57:07.990002" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.990748" 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-07-28T01:57:07.990502" elapsed="0.000292"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.991753" 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-07-28T01:57:07.991498" elapsed="0.000299"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.992221" 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-07-28T01:57:07.991956" elapsed="0.000291"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.992990" 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-07-28T01:57:07.992629" elapsed="0.000387"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:07.994229" 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-07-28T01:57:07.993743" elapsed="0.000553"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:07.994351" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:57:07.994530" 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-07-28T01:57:07.993201" elapsed="0.001354"/>
</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-07-28T01:57:07.994710" elapsed="0.000288"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:57:07.992490" elapsed="0.002553"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:07.992299" elapsed="0.002783"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:07.995124" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:07.995281" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:07.991160" elapsed="0.004146"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:07.990863" elapsed="0.004475"/>
</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-07-28T01:57:07.995527" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:07.995362" elapsed="0.000224"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:07.990844" elapsed="0.004763"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:07.996295" 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-07-28T01:57:07.995750" elapsed="0.000572"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:07.996371" 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-07-28T01:57:07.987156" elapsed="0.009355"/>
</kw>
<msg time="2026-07-28T01:57:07.996567" 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-07-28T01:57:07.974929" elapsed="0.021686"/>
</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-07-28T01:57:08.008800" elapsed="0.000034"/>
</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-07-28T01:57:08.020838" 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-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-07-28T01:57:08.032943" elapsed="0.000031"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:08.033187" 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-07-28T01:57:08.033368" 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-07-28T01:57:08.033770" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.033620" elapsed="0.000206"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:08.033604" elapsed="0.000347"/>
</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-07-28T01:57:08.034123" elapsed="0.000023"/>
</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-07-28T01:57:08.034299" 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-07-28T01:57:08.034483" elapsed="0.000022"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:08.033572" elapsed="0.000966"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.033448" elapsed="0.001117"/>
</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-07-28T01:57:08.034714" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.034791" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:57:08.034933" 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-07-28T01:57:07.970709" elapsed="0.064257"/>
</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-07-28T01:57:08.050175" elapsed="0.000545"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.068574" 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-07-28T01:57:08.068054" elapsed="0.000554"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.069563" 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-07-28T01:57:08.069217" elapsed="0.000444">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-07-28T01:57:08.069772" 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-07-28T01:57:08.068817" elapsed="0.000983"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.070496" 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-07-28T01:57:08.070032" elapsed="0.000496"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.070877" 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-07-28T01:57:08.071046" 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-07-28T01:57:08.070731" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.071500" 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-07-28T01:57:08.071231" elapsed="0.000317"/>
</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-07-28T01:57:08.071941" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.071623" elapsed="0.000378"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.072483" 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-07-28T01:57:08.072174" elapsed="0.000336"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.072027" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.071602" elapsed="0.000965"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.073160" 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-07-28T01:57:08.072715" elapsed="0.000472"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.073237" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:57:08.073399" 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-07-28T01:57:08.067164" elapsed="0.006259"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.086927" 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-07-28T01:57:08.086549" elapsed="0.000406"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.087689" 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-07-28T01:57:08.087470" elapsed="0.000285">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-07-28T01:57:08.087849" 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-07-28T01:57:08.087120" elapsed="0.000754"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.088424" 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-07-28T01:57:08.088040" elapsed="0.000425"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.088765" 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-07-28T01:57:08.088891" 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-07-28T01:57:08.088629" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.089318" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.089071" 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-07-28T01:57:08.089737" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.089430" elapsed="0.000366"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.090287" 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-07-28T01:57:08.089989" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.089840" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.089411" elapsed="0.000959"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.090958" 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-07-28T01:57:08.090533" elapsed="0.000452"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.091033" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:08.091185" 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-07-28T01:57:08.085902" elapsed="0.005308"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.104184" 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-07-28T01:57:08.103806" elapsed="0.000407"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.104955" 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-07-28T01:57:08.104748" elapsed="0.000271">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-07-28T01:57:08.105116" 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-07-28T01:57:08.104376" elapsed="0.000764"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.105757" 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-07-28T01:57:08.105303" elapsed="0.000482"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.106115" 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-07-28T01:57:08.106243" 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-07-28T01:57:08.105976" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.106691" 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-07-28T01:57:08.106426" elapsed="0.000313"/>
</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-07-28T01:57:08.107096" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.106808" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.107640" 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-07-28T01:57:08.107326" elapsed="0.000341"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.107180" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.106789" elapsed="0.000936"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.108475" 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-07-28T01:57:08.107872" elapsed="0.000634"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.108556" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:08.108713" 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-07-28T01:57:08.103251" elapsed="0.005489"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.109147" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:08.108906" elapsed="0.000267"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.109713" 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-07-28T01:57:08.109333" 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-07-28T01:57:08.110427" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.110188" elapsed="0.000313"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.110174" elapsed="0.000351"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.111021" 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-07-28T01:57:08.110668" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.111988" 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-07-28T01:57:08.111202" elapsed="0.000816"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.112179" elapsed="0.000201"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:08.110141" 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-07-28T01:57:08.112865" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.112622" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.112606" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.113636" 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-07-28T01:57:08.113262" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.114549" 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-07-28T01:57:08.113893" elapsed="0.000685"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.114736" elapsed="0.000191"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:08.112574" 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-07-28T01:57:08.115390" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.115150" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.115135" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.116154" 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-07-28T01:57:08.115802" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.116933" 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-07-28T01:57:08.116335" 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-07-28T01:57:08.117123" elapsed="0.000185"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:08.115103" 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-07-28T01:57:08.117784" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.117545" elapsed="0.000539"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.117530" elapsed="0.000584"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.118637" 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-07-28T01:57:08.118267" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.119394" 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-07-28T01:57:08.118819" 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-07-28T01:57:08.119595" elapsed="0.000182"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:08.117497" 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-07-28T01:57:08.120333" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.119996" elapsed="0.000577"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.119981" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.121089" 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-07-28T01:57:08.120740" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.121923" 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-07-28T01:57:08.121271" 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-07-28T01:57:08.122109" elapsed="0.000183"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:08.119950" 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-07-28T01:57:08.122770" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.122531" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.122516" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.123524" 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-07-28T01:57:08.123158" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.124281" 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-07-28T01:57:08.123704" 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-07-28T01:57:08.124478" elapsed="0.000181"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:08.122484" 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-07-28T01:57:08.125113" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.124875" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.124861" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.125941" 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-07-28T01:57:08.125558" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.126762" 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-07-28T01:57:08.126161" 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-07-28T01:57:08.126945" elapsed="0.000187"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:08.124831" elapsed="0.002340"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.127603" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.127350" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.127335" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.128340" 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-07-28T01:57:08.127992" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.129244" 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-07-28T01:57:08.128537" elapsed="0.000735"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.129426" elapsed="0.000198"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:08.127305" 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-07-28T01:57:08.130123" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.129880" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.129862" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.130886" 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-07-28T01:57:08.130530" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.131663" 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-07-28T01:57:08.131068" 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-07-28T01:57:08.131848" elapsed="0.000183"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:08.129795" 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-07-28T01:57:08.132502" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.132250" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.132235" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.133242" 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-07-28T01:57:08.132892" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.134057" 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-07-28T01:57:08.133424" 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-07-28T01:57:08.134242" elapsed="0.000182"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:08.132205" 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-07-28T01:57:08.134912" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.134675" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.134660" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.135666" 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-07-28T01:57:08.135299" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.136427" 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-07-28T01:57:08.135849" 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-07-28T01:57:08.136625" elapsed="0.000182"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:08.134630" 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-07-28T01:57:08.137301" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.137062" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.137047" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.138116" 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-07-28T01:57:08.137708" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.138891" 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-07-28T01:57:08.138297" 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-07-28T01:57:08.139081" elapsed="0.000183"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:08.137016" 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-07-28T01:57:08.139740" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.139500" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.139484" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.140493" 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-07-28T01:57:08.140130" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.141246" 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-07-28T01:57:08.140675" 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-07-28T01:57:08.141427" elapsed="0.000197"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:08.139436" 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-07-28T01:57:08.142113" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.141872" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.141852" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.142868" 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-07-28T01:57:08.142517" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.143637" 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-07-28T01:57:08.143049" 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-07-28T01:57:08.143819" elapsed="0.000181"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:08.141814" 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-07-28T01:57:08.144473" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.144223" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.144208" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.145383" 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-07-28T01:57:08.144864" elapsed="0.000545"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.146243" 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-07-28T01:57:08.145581" elapsed="0.000691"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.146471" elapsed="0.000210"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:08.144177" elapsed="0.002544"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.147144" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.146904" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.146889" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.147944" 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-07-28T01:57:08.147575" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.148743" 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-07-28T01:57:08.148126" elapsed="0.000711"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.148998" elapsed="0.000189"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:08.146858" elapsed="0.002366"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.149660" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.149405" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.149391" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.150447" 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-07-28T01:57:08.150095" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.151222" 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-07-28T01:57:08.150644" 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-07-28T01:57:08.151404" elapsed="0.000197"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:08.149360" 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-07-28T01:57:08.152058" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.151818" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.151803" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.152830" 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-07-28T01:57:08.152475" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.153631" 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-07-28T01:57:08.153012" 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-07-28T01:57:08.153840" elapsed="0.000184"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:08.151773" 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-07-28T01:57:08.154512" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.154244" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.154226" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.155257" 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-07-28T01:57:08.154905" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.156024" 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-07-28T01:57:08.155435" 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-07-28T01:57:08.156204" elapsed="0.000179"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:08.154195" 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-07-28T01:57:08.156849" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.156615" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.156601" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.157619" 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-07-28T01:57:08.157247" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.158404" 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-07-28T01:57:08.157820" 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-07-28T01:57:08.158605" elapsed="0.000182"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:08.156570" 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-07-28T01:57:08.159239" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.159003" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.158988" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.160109" 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-07-28T01:57:08.159662" elapsed="0.000527"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.160984" 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-07-28T01:57:08.160366" 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-07-28T01:57:08.161171" elapsed="0.000184"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:08.158958" elapsed="0.002435"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.161897" elapsed="0.000357"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.161592" elapsed="0.000702"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.161577" elapsed="0.000742"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.162840" 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-07-28T01:57:08.162483" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.163617" 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-07-28T01:57:08.163022" 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-07-28T01:57:08.163799" elapsed="0.000184"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:08.161546" elapsed="0.002474"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.164439" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.164202" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.164187" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.165229" 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-07-28T01:57:08.164849" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.166034" 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-07-28T01:57:08.165410" 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-07-28T01:57:08.166219" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:08.164157" 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-07-28T01:57:08.166875" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.166638" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.166623" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.167790" 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-07-28T01:57:08.167262" elapsed="0.000554"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.168563" 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-07-28T01:57:08.167969" 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-07-28T01:57:08.168745" elapsed="0.000182"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:08.166592" 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-07-28T01:57:08.169380" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.169143" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.169129" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.170270" 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-07-28T01:57:08.169867" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.171618" 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-07-28T01:57:08.170659" elapsed="0.001001"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.171881" elapsed="0.000259"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:08.169098" elapsed="0.003095"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.172854" elapsed="0.000260"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.172446" elapsed="0.000724"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.172426" elapsed="0.000779"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.174044" 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-07-28T01:57:08.173409" elapsed="0.000675"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.175126" 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-07-28T01:57:08.174309" elapsed="0.000846"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.175311" elapsed="0.000199"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:08.172383" elapsed="0.003165"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.175966" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.175730" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.175716" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.176720" 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-07-28T01:57:08.176352" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.177487" 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-07-28T01:57:08.176900" 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-07-28T01:57:08.177671" elapsed="0.000217"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:08.175685" 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-07-28T01:57:08.178344" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.178108" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.178093" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.179106" 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-07-28T01:57:08.178751" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.179879" 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-07-28T01:57:08.179285" 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-07-28T01:57:08.180067" elapsed="0.000180"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:08.178063" 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-07-28T01:57:08.180835" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.180480" elapsed="0.000577"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.180451" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.181590" 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-07-28T01:57:08.181224" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.182420" 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-07-28T01:57:08.181770" 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-07-28T01:57:08.182620" elapsed="0.000183"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:08.180420" elapsed="0.002420"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.183261" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.183019" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.183004" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.184131" 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-07-28T01:57:08.183718" elapsed="0.000459"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.185247" 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-07-28T01:57:08.184395" elapsed="0.000892"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.185577" elapsed="0.000283"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:08.182974" 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-07-28T01:57:08.186537" elapsed="0.000266"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.186164" elapsed="0.000694"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.186143" elapsed="0.000749"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.187625" 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-07-28T01:57:08.187091" elapsed="0.000571"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.188747" 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-07-28T01:57:08.187902" elapsed="0.000884"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.189005" elapsed="0.000259"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:08.186100" elapsed="0.003217"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.189986" elapsed="0.000252"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.189592" elapsed="0.000686"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.189571" elapsed="0.000731"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.190816" 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-07-28T01:57:08.190445" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.191592" 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-07-28T01:57:08.190997" 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-07-28T01:57:08.191776" elapsed="0.000183"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:08.189528" elapsed="0.002469"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.192412" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.192176" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.192162" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.193169" 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-07-28T01:57:08.192816" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.193969" 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-07-28T01:57:08.193348" 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-07-28T01:57:08.194153" elapsed="0.000192"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:08.192132" 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-07-28T01:57:08.194822" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.194582" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.194567" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.195602" 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-07-28T01:57:08.195230" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.196374" 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-07-28T01:57:08.195785" 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-07-28T01:57:08.196580" elapsed="0.000191"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:08.194535" 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-07-28T01:57:08.197234" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.196994" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.196979" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.198038" 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-07-28T01:57:08.197654" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.198897" 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-07-28T01:57:08.198287" 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-07-28T01:57:08.199090" elapsed="0.000184"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:08.196946" elapsed="0.002367"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.199871" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.199625" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.199497" elapsed="0.000625"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.200812" 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-07-28T01:57:08.200355" elapsed="0.000490"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.201646" 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-07-28T01:57:08.201007" 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-07-28T01:57:08.201881" elapsed="0.000194"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:08.199463" elapsed="0.002650"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.202553" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.202297" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.202282" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.203300" 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-07-28T01:57:08.202947" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.204093" 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-07-28T01:57:08.203496" 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-07-28T01:57:08.204278" elapsed="0.000200"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:08.202252" 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-07-28T01:57:08.204938" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.204698" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.204684" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.205694" 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-07-28T01:57:08.205325" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.206499" 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-07-28T01:57:08.205904" 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-07-28T01:57:08.206682" elapsed="0.000181"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:08.204653" 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-07-28T01:57:08.207312" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.207078" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.207064" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.208061" 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-07-28T01:57:08.207712" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.208826" 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-07-28T01:57:08.208238" 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-07-28T01:57:08.209007" elapsed="0.000185"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:08.207034" 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-07-28T01:57:08.209658" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.209406" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.209392" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.210449" 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-07-28T01:57:08.210096" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.211234" 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-07-28T01:57:08.210648" 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-07-28T01:57:08.211477" elapsed="0.000185"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:08.209362" elapsed="0.002338"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.212118" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.211881" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.211866" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.212894" 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-07-28T01:57:08.212523" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.213680" 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-07-28T01:57:08.213077" 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-07-28T01:57:08.213931" elapsed="0.000198"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:08.211836" 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-07-28T01:57:08.214613" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.214352" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.214336" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.215363" 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-07-28T01:57:08.215008" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.216148" 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-07-28T01:57:08.215562" 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-07-28T01:57:08.216330" elapsed="0.000198"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:08.214305" 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-07-28T01:57:08.217115" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.216871" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.216732" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.217899" 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-07-28T01:57:08.217523" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.218686" 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-07-28T01:57:08.218087" 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-07-28T01:57:08.218870" elapsed="0.000185"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:08.216701" 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-07-28T01:57:08.219527" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.219272" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.219257" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.220271" 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-07-28T01:57:08.219919" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.221052" 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-07-28T01:57:08.220469" 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-07-28T01:57:08.221237" elapsed="0.000184"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:08.219227" 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-07-28T01:57:08.221991" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.221698" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.221683" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.222757" 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-07-28T01:57:08.222384" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.223534" 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-07-28T01:57:08.222938" 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-07-28T01:57:08.223719" elapsed="0.000183"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:08.221652" 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-07-28T01:57:08.224368" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.224128" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.224113" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.225138" 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-07-28T01:57:08.224784" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.225938" 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-07-28T01:57:08.225321" 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-07-28T01:57:08.226124" elapsed="0.000184"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:08.224082" 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-07-28T01:57:08.226789" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.226551" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.226536" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.227546" 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-07-28T01:57:08.227177" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.228308" 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-07-28T01:57:08.227726" 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-07-28T01:57:08.228510" elapsed="0.000186"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:08.226503" 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-07-28T01:57:08.229151" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.228913" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.228899" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.229953" 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-07-28T01:57:08.229559" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.230741" 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-07-28T01:57:08.230136" 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-07-28T01:57:08.230949" elapsed="0.000202"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:08.228869" elapsed="0.002322"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.231635" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.231375" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.231360" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.232390" 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-07-28T01:57:08.232025" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.233181" 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-07-28T01:57:08.232589" 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-07-28T01:57:08.233424" elapsed="0.000208"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:08.231328" 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-07-28T01:57:08.234369" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.234108" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.233906" elapsed="0.000736"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.235151" 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-07-28T01:57:08.234787" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.235935" 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-07-28T01:57:08.235334" 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-07-28T01:57:08.236121" elapsed="0.000185"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:08.233873" elapsed="0.002472"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.236788" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.236549" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.236533" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.237560" 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-07-28T01:57:08.237185" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.239400" 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-07-28T01:57:08.237741" elapsed="0.001736"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.239867" elapsed="0.000365"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:08.236501" elapsed="0.003792"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.241143" elapsed="0.000362"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.240717" elapsed="0.000850"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.240685" elapsed="0.000924"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.242540" 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-07-28T01:57:08.241917" elapsed="0.000663"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.243919" 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-07-28T01:57:08.242863" elapsed="0.001100"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.244198" elapsed="0.000354"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:08.240581" elapsed="0.004075"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.245345" elapsed="0.000350"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.244937" elapsed="0.000889"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.244913" elapsed="0.000951"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.246737" 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-07-28T01:57:08.246082" elapsed="0.000697"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.248066" 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-07-28T01:57:08.247013" elapsed="0.001097"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.248340" elapsed="0.000347"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:08.244866" elapsed="0.003878"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.250022" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.249112" elapsed="0.001161"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.249050" elapsed="0.001248"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.250925" 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-07-28T01:57:08.250502" elapsed="0.000543"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.251984" 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-07-28T01:57:08.251253" 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-07-28T01:57:08.252175" elapsed="0.000237"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:08.248967" elapsed="0.003501"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.252963" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.252663" elapsed="0.000580"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.252647" elapsed="0.000621"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.253912" 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-07-28T01:57:08.253467" elapsed="0.000472"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.254855" 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-07-28T01:57:08.254146" 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-07-28T01:57:08.255088" elapsed="0.000195"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:08.252616" elapsed="0.002706"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.255852" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.255567" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.255552" elapsed="0.000597"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.256725" 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-07-28T01:57:08.256297" elapsed="0.000456"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.257676" 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-07-28T01:57:08.256911" elapsed="0.000807"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.257906" elapsed="0.000234"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:08.255519" elapsed="0.002661"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.258857" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.258562" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.258352" elapsed="0.000761"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.259720" 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-07-28T01:57:08.259295" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.260611" 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-07-28T01:57:08.259944" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.260838" elapsed="0.000190"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:08.258320" elapsed="0.002747"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.261589" elapsed="0.000261"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.261290" elapsed="0.000613"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.261275" elapsed="0.000654"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.262474" 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-07-28T01:57:08.262080" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.263277" 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-07-28T01:57:08.262662" 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-07-28T01:57:08.263489" elapsed="0.000191"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:08.261243" elapsed="0.002476"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.264201" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.263916" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.263901" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.265002" 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-07-28T01:57:08.264633" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.265860" 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-07-28T01:57:08.265188" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.266067" elapsed="0.000189"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:08.263868" 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-07-28T01:57:08.266753" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.266498" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.266481" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.267552" 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-07-28T01:57:08.267165" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.268353" 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-07-28T01:57:08.267738" 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-07-28T01:57:08.268556" elapsed="0.000187"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:08.266432" 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-07-28T01:57:08.269235" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.268979" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.268964" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.270135" 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-07-28T01:57:08.269662" elapsed="0.000519"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.271343" 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-07-28T01:57:08.270413" elapsed="0.000982"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.271656" elapsed="0.000288"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:08.268930" elapsed="0.003069"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.272684" elapsed="0.000280"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.272283" elapsed="0.000746"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.272260" elapsed="0.000815"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.273878" 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-07-28T01:57:08.273291" elapsed="0.000628"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.275091" 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-07-28T01:57:08.274164" elapsed="0.000969"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.275378" elapsed="0.000310"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:08.272204" elapsed="0.003540"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.276405" elapsed="0.000316"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.276030" elapsed="0.000750"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.276006" elapsed="0.000810"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.277613" 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-07-28T01:57:08.277033" elapsed="0.000621"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.278636" 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-07-28T01:57:08.277952" elapsed="0.000713"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.278870" elapsed="0.000192"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:08.275958" elapsed="0.003143"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.280628" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.280348" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.279271" elapsed="0.001623"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.281429" 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-07-28T01:57:08.281042" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.282286" 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-07-28T01:57:08.281645" 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-07-28T01:57:08.282649" elapsed="0.000192"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:08.279240" elapsed="0.003640"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.283310" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.283065" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.283050" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.284116" 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-07-28T01:57:08.283744" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.285038" 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-07-28T01:57:08.284302" elapsed="0.000766"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.285241" elapsed="0.000191"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:08.283018" elapsed="0.002470"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.285956" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.285688" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.285672" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.286773" 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-07-28T01:57:08.286380" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.287574" 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-07-28T01:57:08.286958" 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-07-28T01:57:08.287774" elapsed="0.000192"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:08.285639" 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-07-28T01:57:08.288442" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.288200" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.288184" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.289248" 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-07-28T01:57:08.288872" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.290120" 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-07-28T01:57:08.289449" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.290321" elapsed="0.000206"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:08.288152" elapsed="0.002413"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.291003" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.290761" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.290745" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.291792" 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-07-28T01:57:08.291404" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.292630" 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-07-28T01:57:08.292013" 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-07-28T01:57:08.292828" elapsed="0.000190"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:08.290706" elapsed="0.002350"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.293510" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.293252" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.293236" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.294327" 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-07-28T01:57:08.293954" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.295143" 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-07-28T01:57:08.294538" 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-07-28T01:57:08.295336" elapsed="0.000203"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:08.293203" elapsed="0.002384"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.296027" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.295774" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.295760" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.296820" 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-07-28T01:57:08.296432" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.297632" 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-07-28T01:57:08.297003" 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-07-28T01:57:08.297840" elapsed="0.000202"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:08.295728" elapsed="0.002354"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.298673" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.298394" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.298249" elapsed="0.000689"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.299479" 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-07-28T01:57:08.299085" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.300278" 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-07-28T01:57:08.299675" 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-07-28T01:57:08.300484" elapsed="0.000206"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:08.298218" elapsed="0.002512"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.301176" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.300930" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.300915" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.302047" 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-07-28T01:57:08.301619" elapsed="0.000457"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.302856" 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-07-28T01:57:08.302236" 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-07-28T01:57:08.303053" elapsed="0.000188"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:08.300882" elapsed="0.002397"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.303726" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.303482" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.303464" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.304560" 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-07-28T01:57:08.304165" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.305358" 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-07-28T01:57:08.304749" 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-07-28T01:57:08.305585" elapsed="0.000211"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:08.303418" 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-07-28T01:57:08.306285" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.306033" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.306012" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.307077" 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-07-28T01:57:08.306713" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.307891" 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-07-28T01:57:08.307271" 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-07-28T01:57:08.308089" elapsed="0.000188"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:08.305976" elapsed="0.002340"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.308758" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.308517" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.308502" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.309549" 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-07-28T01:57:08.309165" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.310370" 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-07-28T01:57:08.309754" 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-07-28T01:57:08.310574" elapsed="0.000186"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:08.308469" 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-07-28T01:57:08.311239" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.310994" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.310979" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.312031" 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-07-28T01:57:08.311662" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.312853" 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-07-28T01:57:08.312214" 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-07-28T01:57:08.313042" elapsed="0.000196"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:08.310946" 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-07-28T01:57:08.313765" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.313475" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.313444" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.314561" 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-07-28T01:57:08.314176" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.315347" 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-07-28T01:57:08.314747" 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-07-28T01:57:08.315546" elapsed="0.000184"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:08.313413" elapsed="0.002397"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.316391" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.316126" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.315991" elapsed="0.000677"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.317179" 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-07-28T01:57:08.316816" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.318029" 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-07-28T01:57:08.317377" 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-07-28T01:57:08.318219" elapsed="0.000188"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:08.315959" elapsed="0.002487"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.318905" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.318661" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.318646" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.319720" 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-07-28T01:57:08.319319" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.320529" 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-07-28T01:57:08.319907" 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-07-28T01:57:08.320718" elapsed="0.000198"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:08.318613" elapsed="0.002341"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.321401" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.321145" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.321130" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.322208" 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-07-28T01:57:08.321847" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.323008" 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-07-28T01:57:08.322390" 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-07-28T01:57:08.323210" elapsed="0.000188"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:08.321097" elapsed="0.002339"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.323900" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.323657" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.323642" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.324688" 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-07-28T01:57:08.324304" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.325485" 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-07-28T01:57:08.324873" 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-07-28T01:57:08.325684" elapsed="0.000232"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:08.323609" 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-07-28T01:57:08.326397" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.326154" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.326140" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.327200" 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-07-28T01:57:08.326824" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.328018" 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-07-28T01:57:08.327395" elapsed="0.000691"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.328250" elapsed="0.000199"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:08.326108" 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-07-28T01:57:08.328945" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.328693" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.328678" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.329753" 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-07-28T01:57:08.329355" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.330582" 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-07-28T01:57:08.329951" 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-07-28T01:57:08.330782" elapsed="0.000188"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:08.328647" 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-07-28T01:57:08.331442" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.331191" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.331176" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.332227" 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-07-28T01:57:08.331874" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.333033" 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-07-28T01:57:08.332419" 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-07-28T01:57:08.333220" elapsed="0.000185"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:08.331145" 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-07-28T01:57:08.334090" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.333824" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.333642" elapsed="0.000703"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.334881" 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-07-28T01:57:08.334507" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.335683" 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-07-28T01:57:08.335066" 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-07-28T01:57:08.335870" elapsed="0.000188"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:08.333610" 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-07-28T01:57:08.336549" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.336292" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.336277" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.337315" 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-07-28T01:57:08.336955" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.338160" 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-07-28T01:57:08.337518" 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-07-28T01:57:08.338346" elapsed="0.000202"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:08.336246" elapsed="0.002340"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.339021" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.338778" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.338763" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.339806" 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-07-28T01:57:08.339425" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.340661" 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-07-28T01:57:08.340039" 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-07-28T01:57:08.340849" elapsed="0.000198"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:08.338728" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.341524" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.341269" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.341254" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.342340" 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-07-28T01:57:08.341961" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.343154" 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-07-28T01:57:08.342539" 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-07-28T01:57:08.343342" elapsed="0.000202"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:08.341223" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.344018" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.343774" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.343756" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.344803" 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-07-28T01:57:08.344420" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.345597" 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-07-28T01:57:08.344984" 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-07-28T01:57:08.345916" elapsed="0.000202"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:08.343717" elapsed="0.002442"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.346647" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.346344" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.346328" elapsed="0.000571"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.347449" 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-07-28T01:57:08.347086" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.348323" 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-07-28T01:57:08.347690" 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-07-28T01:57:08.348527" elapsed="0.000186"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:08.346297" elapsed="0.002500"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.349262" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.348982" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.348967" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.350139" 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-07-28T01:57:08.349738" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.350998" 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-07-28T01:57:08.350359" 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-07-28T01:57:08.351182" elapsed="0.000223"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:08.348936" elapsed="0.002508"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.352117" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.351789" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.351662" elapsed="0.000715"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.352935" 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-07-28T01:57:08.352539" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.353825" 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-07-28T01:57:08.353120" 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-07-28T01:57:08.354092" elapsed="0.000533"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:08.351596" elapsed="0.003118"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.355906" elapsed="0.000488"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.355196" elapsed="0.001317"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.355163" elapsed="0.001406"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.357972" 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-07-28T01:57:08.356960" elapsed="0.001080"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.358905" 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-07-28T01:57:08.358264" elapsed="0.000704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.359131" elapsed="0.000222"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:08.355093" elapsed="0.004300"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.359875" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.359596" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.359581" elapsed="0.000579"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.360712" 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-07-28T01:57:08.360307" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.361567" 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-07-28T01:57:08.360893" elapsed="0.000703"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.361826" elapsed="0.000226"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:08.359549" elapsed="0.002541"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.362530" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.362274" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.362260" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.363356" 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-07-28T01:57:08.362966" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.364205" 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-07-28T01:57:08.363587" 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-07-28T01:57:08.364389" elapsed="0.000242"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:08.362228" elapsed="0.002443"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.365130" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.364889" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.364873" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.365975" 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-07-28T01:57:08.365572" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.366824" 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-07-28T01:57:08.366192" elapsed="0.000695"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.367081" elapsed="0.000224"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:08.364807" elapsed="0.002537"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.367824" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.367545" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.367530" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.368617" 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-07-28T01:57:08.368249" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.369470" 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-07-28T01:57:08.368837" 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-07-28T01:57:08.369657" elapsed="0.000209"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:08.367498" 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-07-28T01:57:08.370373" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.370088" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.370074" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.371174" 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-07-28T01:57:08.370776" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.371991" 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-07-28T01:57:08.371355" elapsed="0.000664"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.372175" elapsed="0.000217"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:08.370043" 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-07-28T01:57:08.373033" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.372749" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.372620" elapsed="0.000664"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.373862" 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-07-28T01:57:08.373428" elapsed="0.000461"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.374682" 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-07-28T01:57:08.374046" elapsed="0.000664"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.374867" elapsed="0.000221"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:08.372589" elapsed="0.002537"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.375595" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.375306" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.375291" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.376378" 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-07-28T01:57:08.375988" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.377231" 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-07-28T01:57:08.376576" elapsed="0.000683"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.377416" elapsed="0.000200"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:08.375261" elapsed="0.002392"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:08.109802" elapsed="0.267901"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.379064" 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-07-28T01:57:08.377869" elapsed="0.001224"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.379191" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:57:08.379380" 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-07-28T01:57:08.048910" elapsed="0.330537"/>
</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-07-28T01:57:08.380981" 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-07-28T01:57:08.380663" elapsed="0.000396">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-07-28T01:57:08.381153" 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-07-28T01:57:08.380253" elapsed="0.000963"/>
</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-07-28T01:57:08.381590" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.381288" elapsed="0.000363"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.382275" 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-07-28T01:57:08.381943" elapsed="0.000358"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.381675" elapsed="0.000661"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.381270" elapsed="0.001088"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.385070" 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-07-28T01:57:08.382563" elapsed="0.002534"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:08.385149" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:08.385305" 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-07-28T01:57:08.379888" elapsed="0.005442"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.387092" 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-07-28T01:57:08.386797" elapsed="0.000340"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.387591" 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-07-28T01:57:08.387326" elapsed="0.000791"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.388578" 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-07-28T01:57:08.388310" elapsed="0.000312"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.389062" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.388814" elapsed="0.000291"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:08.390029" 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-07-28T01:57:08.389822" elapsed="0.000236"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:08.390422" 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-07-28T01:57:08.390247" elapsed="0.000200"/>
</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-07-28T01:57:08.390650" elapsed="0.000198"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.391289" 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-07-28T01:57:08.391003" elapsed="0.000330"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:08.391374" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:08.391544" 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-07-28T01:57:08.389344" elapsed="0.002225"/>
</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-07-28T01:57:08.421107" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:08.421530" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:08.421824" 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-07-28T01:57:08.394029" elapsed="0.027861"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.391837" elapsed="0.030168"/>
</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-07-28T01:57:08.422503" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.422074" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.391658" elapsed="0.031062"/>
</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-07-28T01:57:08.430808" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.425257" elapsed="0.005648"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.424715" elapsed="0.006269"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.424669" elapsed="0.006371"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.435248" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.431702" elapsed="0.003592"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.431164" elapsed="0.004164"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.431127" elapsed="0.004225"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.435958" 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-07-28T01:57:08.435563" 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-07-28T01:57:08.436308" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.436054" elapsed="0.000311"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.436881" 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-07-28T01:57:08.436580" elapsed="0.000327"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.436388" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.436036" elapsed="0.000928"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.437518" 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-07-28T01:57:08.437138" 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-07-28T01:57:08.437876" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.437616" elapsed="0.000317"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.438426" 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-07-28T01:57:08.438131" elapsed="0.000320"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.437956" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.437598" elapsed="0.000926"/>
</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-07-28T01:57:08.438681" elapsed="0.000349"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:08.439506" 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-07-28T01:57:08.439197" elapsed="0.000336"/>
</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-07-28T01:57:08.439689" elapsed="0.002225"/>
</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-07-28T01:57:08.423607" elapsed="0.018370"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.442160" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:08.442051" elapsed="0.000156"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.442032" elapsed="0.000197"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:08.444850" 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-07-28T01:57:08.442378" elapsed="0.002499"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:08.444925" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:57:08.445128" 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-07-28T01:57:08.385728" elapsed="0.059425"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.445258" elapsed="0.000072"/>
</return>
<msg time="2026-07-28T01:57:08.445481" 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-07-28T01:57:07.959907" elapsed="0.485601"/>
</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-07-28T01:57:08.445920" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.445673" elapsed="0.000351"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.445632" elapsed="0.000416"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.446081" elapsed="0.000027"/>
</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-07-28T01:57:07.957269" elapsed="0.488940"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:07.945652" elapsed="0.500604"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.447066" 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-07-28T01:57:08.446568" elapsed="0.000526"/>
</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-07-28T01:57:08.492325" 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-07-28T01:57:08.491911" elapsed="0.000442"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.493193" 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-07-28T01:57:08.492913" elapsed="0.000358">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-07-28T01:57:08.493364" 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-07-28T01:57:08.492533" elapsed="0.000855"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.494005" 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-07-28T01:57:08.493603" elapsed="0.000473"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.494376" 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-07-28T01:57:08.494585" 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-07-28T01:57:08.494239" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.495057" 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-07-28T01:57:08.494772" elapsed="0.000331"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.496143" 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-07-28T01:57:08.495844" elapsed="0.000343"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.496668" 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-07-28T01:57:08.496348" elapsed="0.000346"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.497476" 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-07-28T01:57:08.497062" elapsed="0.000442"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:08.498656" 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-07-28T01:57:08.498141" elapsed="0.000542"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:08.498766" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:08.498962" 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-07-28T01:57:08.497754" elapsed="0.001236"/>
</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-07-28T01:57:08.499145" elapsed="0.000278"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:57:08.496925" elapsed="0.002592"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:08.496751" elapsed="0.002803"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:08.499599" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:08.499760" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:08.495518" elapsed="0.004267"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.495170" elapsed="0.004647"/>
</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-07-28T01:57:08.500031" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.499879" elapsed="0.000208"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.495152" elapsed="0.004956"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.500838" 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-07-28T01:57:08.500249" elapsed="0.000617"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.500915" 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-07-28T01:57:08.491241" elapsed="0.009799"/>
</kw>
<msg time="2026-07-28T01:57:08.501099" 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-07-28T01:57:08.478087" elapsed="0.023061"/>
</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-07-28T01:57:08.514257" 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-07-28T01:57:08.527233" elapsed="0.000046"/>
</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-07-28T01:57:08.540260" 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-07-28T01:57:08.540498" elapsed="0.000057"/>
</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-07-28T01:57:08.540725" 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-07-28T01:57:08.541179" elapsed="0.000054"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.541021" elapsed="0.000249"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:08.541002" elapsed="0.000296"/>
</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-07-28T01:57:08.541444" elapsed="0.000035"/>
</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-07-28T01:57:08.541767" elapsed="0.000022"/>
</kw>
<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-07-28T01:57:08.541941" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:08.540963" elapsed="0.001031"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.540844" elapsed="0.001180"/>
</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-07-28T01:57:08.542210" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.542290" elapsed="0.000017"/>
</return>
<msg time="2026-07-28T01:57:08.542441" 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-07-28T01:57:08.473575" elapsed="0.068942"/>
</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-07-28T01:57:08.554139" elapsed="0.000448"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.568549" 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-07-28T01:57:08.568101" elapsed="0.000517"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.569468" 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-07-28T01:57:08.569165" elapsed="0.000417">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-07-28T01:57:08.569706" 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-07-28T01:57:08.568786" elapsed="0.000945"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.570366" 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-07-28T01:57:08.569932" elapsed="0.000462"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.570751" 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-07-28T01:57:08.570908" 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-07-28T01:57:08.570572" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.571409" 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-07-28T01:57:08.571128" elapsed="0.000345"/>
</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-07-28T01:57:08.571875" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.571543" elapsed="0.000392"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.572441" 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-07-28T01:57:08.572142" elapsed="0.000341"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.571960" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.571525" elapsed="0.001052"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.573208" 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-07-28T01:57:08.572727" elapsed="0.000509"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.573285" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:08.573495" 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-07-28T01:57:08.567405" elapsed="0.006117"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.587847" 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-07-28T01:57:08.587407" elapsed="0.000468"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.588697" 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-07-28T01:57:08.588450" elapsed="0.000310">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-07-28T01:57:08.588893" 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-07-28T01:57:08.588078" elapsed="0.000840"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.589527" 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-07-28T01:57:08.589083" elapsed="0.000472"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.589908" 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-07-28T01:57:08.590071" 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-07-28T01:57:08.589770" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.590557" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.590254" elapsed="0.000347"/>
</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-07-28T01:57:08.591000" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.590669" elapsed="0.000390"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.591587" 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-07-28T01:57:08.591268" elapsed="0.000345"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.591083" elapsed="0.000606"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.590650" elapsed="0.001062"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.592333" 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-07-28T01:57:08.591861" elapsed="0.000499"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.592648" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:57:08.592815" 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-07-28T01:57:08.586749" elapsed="0.006090"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.606787" 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-07-28T01:57:08.606344" elapsed="0.000471"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.607638" 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-07-28T01:57:08.607395" elapsed="0.000311">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-07-28T01:57:08.607800" 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-07-28T01:57:08.607023" elapsed="0.000801"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.608466" 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-07-28T01:57:08.608027" elapsed="0.000468"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.608830" 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-07-28T01:57:08.609011" 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-07-28T01:57:08.608657" elapsed="0.000381"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.609530" 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-07-28T01:57:08.609234" elapsed="0.000369"/>
</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-07-28T01:57:08.610019" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.609677" elapsed="0.000403"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.610601" 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-07-28T01:57:08.610253" elapsed="0.000375"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.610105" elapsed="0.000593"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.609658" elapsed="0.001065"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.611539" 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-07-28T01:57:08.610872" elapsed="0.000697"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.611656" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:08.611814" 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-07-28T01:57:08.605739" elapsed="0.006101"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.612289" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:08.612044" elapsed="0.000271"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.612933" 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-07-28T01:57:08.612527" elapsed="0.000433"/>
</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-07-28T01:57:08.613736" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.613412" elapsed="0.000385"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.613397" elapsed="0.000424"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.614361" 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-07-28T01:57:08.613963" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.615433" 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-07-28T01:57:08.614595" elapsed="0.000881"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.615636" elapsed="0.000240"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:08.613363" elapsed="0.002552"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.616373" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.616098" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.616083" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.617180" 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-07-28T01:57:08.616785" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.618062" 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-07-28T01:57:08.617401" 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-07-28T01:57:08.618288" elapsed="0.000203"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:08.616053" elapsed="0.002511"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.619064" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.618787" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.618772" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.619908" 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-07-28T01:57:08.619514" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.620768" 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-07-28T01:57:08.620093" elapsed="0.000704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.620954" elapsed="0.000223"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:08.618740" elapsed="0.002475"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.621729" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.621399" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.621384" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.622566" 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-07-28T01:57:08.622159" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.623402" 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-07-28T01:57:08.622785" 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-07-28T01:57:08.623640" elapsed="0.000219"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:08.621353" elapsed="0.002547"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.624362" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.624085" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.624071" elapsed="0.000592"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.625202" 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-07-28T01:57:08.624808" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.626074" 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-07-28T01:57:08.625421" 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-07-28T01:57:08.626297" elapsed="0.000202"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:08.624039" 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-07-28T01:57:08.626998" elapsed="0.000267"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.626758" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.626744" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.627882" 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-07-28T01:57:08.627489" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.628698" 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-07-28T01:57:08.628064" 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-07-28T01:57:08.628924" elapsed="0.000183"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:08.626712" 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-07-28T01:57:08.629646" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.629367" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.629352" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.630488" 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-07-28T01:57:08.630079" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.631283" 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-07-28T01:57:08.630671" 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-07-28T01:57:08.631520" elapsed="0.000225"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:08.629320" elapsed="0.002465"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.632208" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.631970" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.631955" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.633050" 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-07-28T01:57:08.632657" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.634120" 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-07-28T01:57:08.633235" elapsed="0.000913"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.634306" elapsed="0.000238"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:08.631924" elapsed="0.002660"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.635049" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.634767" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.634752" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.635892" 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-07-28T01:57:08.635494" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.636710" 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-07-28T01:57:08.636076" 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-07-28T01:57:08.636933" elapsed="0.000183"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:08.634721" elapsed="0.002464"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.637682" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.637370" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.637355" elapsed="0.000613"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.638523" 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-07-28T01:57:08.638115" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.639365" 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-07-28T01:57:08.638705" 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-07-28T01:57:08.639566" elapsed="0.000222"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:08.637324" elapsed="0.002502"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.640284" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.640008" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.639993" elapsed="0.000588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.641112" 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-07-28T01:57:08.640725" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.641998" 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-07-28T01:57:08.641329" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.642221" elapsed="0.000186"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:08.639962" elapsed="0.002482"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.642931" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.642692" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.642677" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.643768" 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-07-28T01:57:08.643357" elapsed="0.000471"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.644708" 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-07-28T01:57:08.644032" elapsed="0.000705"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.644894" elapsed="0.000219"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:08.642644" elapsed="0.002508"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.645657" elapsed="0.000229"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.645336" elapsed="0.000590"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.645321" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.646499" 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-07-28T01:57:08.646095" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.647341" 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-07-28T01:57:08.646719" 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-07-28T01:57:08.647578" elapsed="0.000186"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:08.645290" elapsed="0.002511"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.648256" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.647981" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.647966" elapsed="0.000589"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.649085" 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-07-28T01:57:08.648699" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.649974" 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-07-28T01:57:08.649306" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.650200" elapsed="0.000186"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:08.647936" elapsed="0.002535"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.650935" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.650660" elapsed="0.000535"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.650644" elapsed="0.000576"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.652980" 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-07-28T01:57:08.651363" elapsed="0.001644"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.653805" 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-07-28T01:57:08.653172" 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-07-28T01:57:08.653993" elapsed="0.000184"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:08.650613" elapsed="0.003603"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.654670" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.654399" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.654384" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.655416" 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-07-28T01:57:08.655065" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.656201" 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-07-28T01:57:08.655614" 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-07-28T01:57:08.656386" elapsed="0.000200"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:08.654353" 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-07-28T01:57:08.657041" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.656802" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.656788" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.657856" 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-07-28T01:57:08.657480" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.658628" 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-07-28T01:57:08.658036" 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-07-28T01:57:08.658811" elapsed="0.000181"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:08.656758" 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-07-28T01:57:08.659464" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.659213" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.659198" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.660204" 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-07-28T01:57:08.659853" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.660980" 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-07-28T01:57:08.660384" 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-07-28T01:57:08.661164" elapsed="0.000182"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:08.659168" 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-07-28T01:57:08.661850" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.661606" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.661590" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.662610" 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-07-28T01:57:08.662241" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.663365" 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-07-28T01:57:08.662790" 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-07-28T01:57:08.663564" elapsed="0.000183"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:08.661537" 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-07-28T01:57:08.664203" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.663967" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.663952" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.664956" 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-07-28T01:57:08.664607" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.665771" 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-07-28T01:57:08.665136" 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-07-28T01:57:08.665954" elapsed="0.000182"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:08.663922" 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-07-28T01:57:08.666610" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.666355" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.666340" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.667346" 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-07-28T01:57:08.666999" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.668118" 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-07-28T01:57:08.667540" 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-07-28T01:57:08.668301" elapsed="0.000238"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:08.666309" 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-07-28T01:57:08.669001" elapsed="0.000298"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.668761" elapsed="0.000578"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.668746" elapsed="0.000617"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.669891" 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-07-28T01:57:08.669526" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.670678" 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-07-28T01:57:08.670074" 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-07-28T01:57:08.670863" elapsed="0.000184"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:08.668716" 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-07-28T01:57:08.671531" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.671268" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.671253" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.672274" 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-07-28T01:57:08.671924" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.673052" 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-07-28T01:57:08.672471" 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-07-28T01:57:08.673236" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:08.671223" 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-07-28T01:57:08.673917" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.673678" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.673663" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.674675" 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-07-28T01:57:08.674308" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.675430" 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-07-28T01:57:08.674856" 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-07-28T01:57:08.675632" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:08.673632" 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-07-28T01:57:08.676273" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.676031" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.676016" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.677028" 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-07-28T01:57:08.676677" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.677829" 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-07-28T01:57:08.677211" 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-07-28T01:57:08.678016" elapsed="0.000188"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:08.675985" 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-07-28T01:57:08.678678" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.678423" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.678408" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.679416" 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-07-28T01:57:08.679066" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.680189" 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-07-28T01:57:08.679613" 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-07-28T01:57:08.680410" elapsed="0.000200"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:08.678377" 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-07-28T01:57:08.681069" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.680831" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.680816" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.681844" 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-07-28T01:57:08.681474" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.682672" 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-07-28T01:57:08.682026" 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-07-28T01:57:08.682858" elapsed="0.000186"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:08.680785" 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-07-28T01:57:08.683556" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.683264" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.683249" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.684350" 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-07-28T01:57:08.683953" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.685171" 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-07-28T01:57:08.684551" 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-07-28T01:57:08.685395" elapsed="0.000218"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:08.683218" 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-07-28T01:57:08.686243" elapsed="0.000242"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.685883" elapsed="0.000643"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.685866" elapsed="0.000685"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.687052" 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-07-28T01:57:08.686698" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.687878" 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-07-28T01:57:08.687273" 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-07-28T01:57:08.688068" elapsed="0.000223"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:08.685790" elapsed="0.002540"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.688808" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.688530" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.688515" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.689646" 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-07-28T01:57:08.689203" elapsed="0.000471"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.690467" 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-07-28T01:57:08.689868" 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-07-28T01:57:08.690694" elapsed="0.000184"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:08.688482" 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-07-28T01:57:08.691374" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.691135" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.691120" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.692212" 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-07-28T01:57:08.691821" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.693283" 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-07-28T01:57:08.692435" elapsed="0.000877"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.693486" elapsed="0.000242"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:08.691088" elapsed="0.002679"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.694228" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.693947" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.693932" elapsed="0.000595"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.695072" 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-07-28T01:57:08.694673" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.695931" 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-07-28T01:57:08.695294" elapsed="0.000667"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.696152" elapsed="0.000189"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:08.693901" 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-07-28T01:57:08.696856" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.696613" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.696563" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.697729" 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-07-28T01:57:08.697283" elapsed="0.000473"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.698585" 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-07-28T01:57:08.697949" 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-07-28T01:57:08.698807" elapsed="0.000185"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:08.696532" elapsed="0.002499"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.699505" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.699249" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.699233" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.700324" 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-07-28T01:57:08.699935" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.701210" 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-07-28T01:57:08.700561" 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-07-28T01:57:08.701395" elapsed="0.000264"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:08.699200" elapsed="0.002499"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.702159" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.701881" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.701866" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.702990" 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-07-28T01:57:08.702602" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.703844" 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-07-28T01:57:08.703171" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.704029" elapsed="0.000219"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:08.701835" 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-07-28T01:57:08.704968" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.704637" elapsed="0.000562"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.704466" elapsed="0.000758"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.705835" 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-07-28T01:57:08.705409" elapsed="0.000453"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.706700" 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-07-28T01:57:08.706056" 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-07-28T01:57:08.706923" elapsed="0.000191"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:08.704420" elapsed="0.002732"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.707627" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.707331" elapsed="0.000554"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.707317" elapsed="0.000596"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.708467" 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-07-28T01:57:08.708059" elapsed="0.000436"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.709310" 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-07-28T01:57:08.708688" 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-07-28T01:57:08.709570" elapsed="0.000190"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:08.707287" elapsed="0.002511"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.710298" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.710020" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.710005" elapsed="0.000566"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.711108" 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-07-28T01:57:08.710716" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.712005" 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-07-28T01:57:08.711328" elapsed="0.000706"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.712192" elapsed="0.000219"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:08.709973" elapsed="0.002491"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.712932" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.712652" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.712638" elapsed="0.000579"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.713806" 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-07-28T01:57:08.713366" elapsed="0.000466"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.714665" 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-07-28T01:57:08.714025" 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-07-28T01:57:08.714889" elapsed="0.000183"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:08.712606" elapsed="0.002504"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.715583" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.715327" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.715312" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.716432" 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-07-28T01:57:08.716008" elapsed="0.000468"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.717250" 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-07-28T01:57:08.716634" 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-07-28T01:57:08.717578" elapsed="0.000226"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:08.715281" elapsed="0.002564"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.718308" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.718029" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.718014" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.719144" 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-07-28T01:57:08.718753" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.720000" 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-07-28T01:57:08.719326" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.720185" elapsed="0.000221"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:08.717983" elapsed="0.002461"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.720926" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.720648" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.720633" elapsed="0.000578"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.721783" 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-07-28T01:57:08.721353" elapsed="0.000457"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.722638" 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-07-28T01:57:08.721965" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.722859" elapsed="0.000184"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:08.720602" elapsed="0.002479"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.723673" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.723411" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.723284" elapsed="0.000678"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.724519" 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-07-28T01:57:08.724107" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.725325" 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-07-28T01:57:08.724705" 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-07-28T01:57:08.725539" elapsed="0.000226"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:08.723253" elapsed="0.002551"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.726260" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.725985" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.725970" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.727055" 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-07-28T01:57:08.726668" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.727898" 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-07-28T01:57:08.727242" elapsed="0.000685"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.728086" elapsed="0.000187"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:08.725939" elapsed="0.002371"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.728798" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.728517" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.728501" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.729691" 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-07-28T01:57:08.729233" elapsed="0.000486"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.730569" 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-07-28T01:57:08.729926" elapsed="0.000672"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.730801" elapsed="0.000187"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:08.728465" elapsed="0.002561"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.731445" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.731208" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.731193" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.732246" 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-07-28T01:57:08.731851" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.733108" 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-07-28T01:57:08.732428" 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-07-28T01:57:08.733293" elapsed="0.000266"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:08.731161" elapsed="0.002438"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.734061" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.733781" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.733766" elapsed="0.000589"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.735040" 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-07-28T01:57:08.734600" elapsed="0.000473"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.735874" 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-07-28T01:57:08.735230" elapsed="0.000672"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.736097" elapsed="0.000221"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:08.733736" elapsed="0.002620"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.736836" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.736559" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.736544" elapsed="0.000579"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.737687" 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-07-28T01:57:08.737268" elapsed="0.000445"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.738549" 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-07-28T01:57:08.737869" elapsed="0.000709"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.738768" elapsed="0.000187"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:08.736512" 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-07-28T01:57:08.739467" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.739176" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.739159" elapsed="0.000593"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.740285" 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-07-28T01:57:08.739897" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.741146" 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-07-28T01:57:08.740487" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.741330" elapsed="0.000263"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:08.739128" elapsed="0.002505"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.742217" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.741930" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.741798" elapsed="0.000757"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.743099" 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-07-28T01:57:08.742707" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.743960" 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-07-28T01:57:08.743283" elapsed="0.000705"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.744181" elapsed="0.000188"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:08.741767" elapsed="0.002640"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.744884" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.744643" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.744627" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.745766" 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-07-28T01:57:08.745317" elapsed="0.000476"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.746661" 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-07-28T01:57:08.745986" elapsed="0.000705"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.746847" elapsed="0.000219"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:08.744559" elapsed="0.002545"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.747573" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.747284" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.747269" elapsed="0.000590"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.748392" 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-07-28T01:57:08.748003" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.749245" 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-07-28T01:57:08.748588" 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-07-28T01:57:08.749479" elapsed="0.000199"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:08.747239" elapsed="0.002476"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.750174" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.749931" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.749914" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.751058" 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-07-28T01:57:08.750621" elapsed="0.000464"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.751911" 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-07-28T01:57:08.751279" 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-07-28T01:57:08.752095" elapsed="0.000226"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:08.749849" elapsed="0.002509"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.752831" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.752591" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.752574" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.753736" 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-07-28T01:57:08.753292" elapsed="0.000471"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.754590" 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-07-28T01:57:08.753955" 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-07-28T01:57:08.754810" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:08.752507" elapsed="0.002562"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.755578" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.755290" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.755275" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.756362" 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-07-28T01:57:08.755971" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.757226" 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-07-28T01:57:08.756560" elapsed="0.000695"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.757447" elapsed="0.000215"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:08.755243" elapsed="0.002458"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.758159" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.757920" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.757906" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.759037" 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-07-28T01:57:08.758642" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.759852" 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-07-28T01:57:08.759217" 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-07-28T01:57:08.760074" elapsed="0.000219"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:08.757874" elapsed="0.002457"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.760922" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.760676" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.760515" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.761838" 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-07-28T01:57:08.761386" elapsed="0.000479"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.762692" 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-07-28T01:57:08.762021" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.762876" elapsed="0.000224"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:08.760482" elapsed="0.002656"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.763609" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.763355" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.763341" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.764434" 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-07-28T01:57:08.764039" elapsed="0.000436"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.765291" 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-07-28T01:57:08.764668" 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-07-28T01:57:08.765541" elapsed="0.000187"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:08.763308" elapsed="0.002458"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.766228" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.765948" elapsed="0.000555"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.765934" elapsed="0.000594"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.767068" 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-07-28T01:57:08.766673" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.767921" 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-07-28T01:57:08.767289" elapsed="0.000727"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.768181" elapsed="0.000185"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:08.765903" elapsed="0.002501"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.768909" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.768636" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.768621" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.769732" 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-07-28T01:57:08.769304" elapsed="0.000454"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.770582" 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-07-28T01:57:08.769952" 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-07-28T01:57:08.770803" elapsed="0.000186"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:08.768590" 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-07-28T01:57:08.771500" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.771245" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.771231" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.772326" 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-07-28T01:57:08.771931" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.773179" 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-07-28T01:57:08.772560" 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-07-28T01:57:08.773401" elapsed="0.000230"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:08.771199" elapsed="0.002469"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.774130" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.773892" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.773877" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.775007" 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-07-28T01:57:08.774576" elapsed="0.000457"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.775863" 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-07-28T01:57:08.775188" elapsed="0.000704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.776047" elapsed="0.000218"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:08.773845" elapsed="0.002457"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.776777" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.776499" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.776483" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.777637" 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-07-28T01:57:08.777202" elapsed="0.000462"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.778528" 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-07-28T01:57:08.777819" elapsed="0.000738"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.778712" elapsed="0.000227"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:08.776437" elapsed="0.002541"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.779565" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.779303" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.779144" elapsed="0.000710"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.780391" 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-07-28T01:57:08.779997" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.781288" 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-07-28T01:57:08.780667" 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-07-28T01:57:08.781489" elapsed="0.000244"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:08.779113" elapsed="0.002658"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.782229" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.781952" elapsed="0.000555"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.781937" elapsed="0.000595"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.783072" 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-07-28T01:57:08.782679" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.783932" 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-07-28T01:57:08.783293" 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-07-28T01:57:08.784160" elapsed="0.000185"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:08.781906" elapsed="0.002477"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.784894" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.784621" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.784606" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.785721" 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-07-28T01:57:08.785321" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.786586" 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-07-28T01:57:08.785950" 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-07-28T01:57:08.786810" elapsed="0.000184"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:08.784573" elapsed="0.002458"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.787448" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.787211" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.787197" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.788280" 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-07-28T01:57:08.787893" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.789209" 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-07-28T01:57:08.788476" elapsed="0.000765"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.789397" elapsed="0.000231"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:08.787166" elapsed="0.002501"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.790164" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.789887" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.789873" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.790962" 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-07-28T01:57:08.790570" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.791811" 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-07-28T01:57:08.791182" 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-07-28T01:57:08.791996" elapsed="0.000225"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:08.789841" elapsed="0.002418"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.792887" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.792493" elapsed="0.000624"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.792476" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.793718" 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-07-28T01:57:08.793287" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.794572" 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-07-28T01:57:08.793940" 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-07-28T01:57:08.794794" elapsed="0.000186"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:08.792427" elapsed="0.002591"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.795492" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.795238" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.795224" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.796312" 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-07-28T01:57:08.795923" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.797127" 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-07-28T01:57:08.796509" 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-07-28T01:57:08.797312" elapsed="0.000266"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:08.795191" elapsed="0.002426"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.798290" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.798007" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.797823" elapsed="0.000735"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.799139" 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-07-28T01:57:08.798738" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.799992" 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-07-28T01:57:08.799321" 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-07-28T01:57:08.800179" elapsed="0.000233"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:08.797791" elapsed="0.002679"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.800958" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.800673" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.800657" elapsed="0.000590"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.801864" 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-07-28T01:57:08.801393" elapsed="0.000500"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.802745" 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-07-28T01:57:08.802050" elapsed="0.000723"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.802929" elapsed="0.000228"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:08.800623" elapsed="0.002572"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.803672" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.803380" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.803365" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.804510" 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-07-28T01:57:08.804066" elapsed="0.000474"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.805320" 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-07-28T01:57:08.804697" 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-07-28T01:57:08.805689" elapsed="0.000189"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:08.803333" elapsed="0.002584"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.806423" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.806145" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.806130" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.807263" 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-07-28T01:57:08.806872" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.808042" 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-07-28T01:57:08.807447" 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-07-28T01:57:08.808265" elapsed="0.000202"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:08.806098" elapsed="0.002409"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.808970" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.808729" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.808712" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.809875" 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-07-28T01:57:08.809395" elapsed="0.000508"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.810731" 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-07-28T01:57:08.810060" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.810918" elapsed="0.000218"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:08.808644" elapsed="0.002532"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.811649" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.811359" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.811344" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.812484" 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-07-28T01:57:08.812043" elapsed="0.000470"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.813310" 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-07-28T01:57:08.812689" 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-07-28T01:57:08.813573" elapsed="0.000189"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:08.811313" elapsed="0.002487"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.814267" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.814025" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.814007" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.815098" 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-07-28T01:57:08.814710" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.815917" 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-07-28T01:57:08.815277" 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-07-28T01:57:08.816098" elapsed="0.000219"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:08.813935" 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-07-28T01:57:08.816986" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.816699" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.816540" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.817826" 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-07-28T01:57:08.817377" elapsed="0.000475"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.818732" 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-07-28T01:57:08.818099" 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-07-28T01:57:08.818956" elapsed="0.000186"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:08.816508" elapsed="0.002671"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.819662" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.819361" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.819347" elapsed="0.000565"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.820505" 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-07-28T01:57:08.820094" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.821345" 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-07-28T01:57:08.820688" 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-07-28T01:57:08.821562" elapsed="0.000225"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:08.819315" elapsed="0.002512"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.822246" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.822007" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.821992" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.823095" 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-07-28T01:57:08.822701" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.823951" 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-07-28T01:57:08.823277" elapsed="0.000703"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.824141" elapsed="0.000220"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:08.821961" elapsed="0.002438"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.824874" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.824634" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.824619" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.825774" 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-07-28T01:57:08.825305" elapsed="0.000496"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.826599" 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-07-28T01:57:08.825957" elapsed="0.000707"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.826822" elapsed="0.000185"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:08.824586" elapsed="0.002461"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.827527" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.827270" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.827255" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.828349" 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-07-28T01:57:08.827956" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.829210" 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-07-28T01:57:08.828544" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.829393" elapsed="0.000219"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:08.827187" elapsed="0.002500"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.830163" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.829874" elapsed="0.000615"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.829858" elapsed="0.000663"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.831066" 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-07-28T01:57:08.830670" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.831888" 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-07-28T01:57:08.831247" 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-07-28T01:57:08.832073" elapsed="0.000225"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:08.829827" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.832816" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.832537" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.832522" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.833662" 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-07-28T01:57:08.833243" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.834516" 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-07-28T01:57:08.833843" elapsed="0.000703"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.834703" elapsed="0.000216"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:08.832490" elapsed="0.002468"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.835629" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.835359" elapsed="0.000535"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.835176" elapsed="0.000743"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.836480" 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-07-28T01:57:08.836068" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.837369" 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-07-28T01:57:08.836702" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.837631" elapsed="0.000224"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:08.835145" elapsed="0.002749"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.838352" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.838077" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.838062" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.839160" 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-07-28T01:57:08.838764" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.840055" 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-07-28T01:57:08.839381" elapsed="0.000703"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.840240" elapsed="0.000182"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:08.838031" elapsed="0.002479"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.840970" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.840695" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.840681" elapsed="0.000575"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.841833" 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-07-28T01:57:08.841401" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.842702" 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-07-28T01:57:08.842015" elapsed="0.000716"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.842886" elapsed="0.000223"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:08.840649" elapsed="0.002533"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.843668" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.843402" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.843351" elapsed="0.000606"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.844514" 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-07-28T01:57:08.844104" elapsed="0.000436"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.845355" 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-07-28T01:57:08.844696" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.845622" elapsed="0.000189"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:08.843320" elapsed="0.002530"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.846349" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.846074" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.846060" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.847156" 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-07-28T01:57:08.846760" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.848011" 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-07-28T01:57:08.847339" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.848197" elapsed="0.000180"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:08.846029" elapsed="0.002386"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.848921" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.848649" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.848634" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.849734" 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-07-28T01:57:08.849348" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.850626" 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-07-28T01:57:08.849955" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.850811" elapsed="0.000221"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:08.848602" elapsed="0.002468"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.851546" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.851251" elapsed="0.000555"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.851236" elapsed="0.000595"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.852364" 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-07-28T01:57:08.851974" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.853253" 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-07-28T01:57:08.852601" 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-07-28T01:57:08.853440" elapsed="0.000213"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:08.851206" elapsed="0.002485"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.854308" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.854061" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.853900" elapsed="0.000707"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.855145" 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-07-28T01:57:08.854752" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.855998" 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-07-28T01:57:08.855325" 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-07-28T01:57:08.856228" elapsed="0.000237"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:08.853868" elapsed="0.002637"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.856963" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.856723" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.856709" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.857846" 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-07-28T01:57:08.857392" elapsed="0.000480"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.858711" 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-07-28T01:57:08.858027" elapsed="0.000713"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.858933" elapsed="0.000188"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:08.856677" 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-07-28T01:57:08.859633" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.859373" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.859322" elapsed="0.000597"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.860478" 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-07-28T01:57:08.860069" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.861325" 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-07-28T01:57:08.860661" 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-07-28T01:57:08.861556" elapsed="0.000225"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:08.859292" elapsed="0.002528"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.862283" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.862002" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.861987" elapsed="0.000596"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.863123" 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-07-28T01:57:08.862733" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.863981" 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-07-28T01:57:08.863307" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.864164" elapsed="0.000221"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:08.861956" elapsed="0.002467"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.864901" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.864623" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.864608" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.865798" 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-07-28T01:57:08.865367" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.866617" 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-07-28T01:57:08.865980" 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-07-28T01:57:08.866838" elapsed="0.000185"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:08.864576" elapsed="0.002484"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.867526" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.867238" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.867224" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.868303" 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-07-28T01:57:08.867917" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.869234" 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-07-28T01:57:08.868573" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.869417" elapsed="0.000262"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:08.867193" elapsed="0.002525"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.870176" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.869931" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.869884" elapsed="0.000593"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.871056" 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-07-28T01:57:08.870625" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.871921" 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-07-28T01:57:08.871242" elapsed="0.000707"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.872105" elapsed="0.000228"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:08.869853" elapsed="0.002518"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.873691" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.873368" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.872590" elapsed="0.001356"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.874537" 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-07-28T01:57:08.874127" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.875346" 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-07-28T01:57:08.874722" 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-07-28T01:57:08.875581" elapsed="0.000188"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:08.872522" elapsed="0.003286"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.876264" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.875986" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.875971" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.877069" 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-07-28T01:57:08.876674" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.877911" 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-07-28T01:57:08.877251" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:08.878139" elapsed="0.000187"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:08.875941" elapsed="0.002423"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:08.613024" elapsed="0.265372"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.879782" 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-07-28T01:57:08.878572" elapsed="0.001238"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.879874" elapsed="0.000082"/>
</return>
<msg time="2026-07-28T01:57:08.880097" 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-07-28T01:57:08.553097" elapsed="0.327027"/>
</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-07-28T01:57:08.881698" 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-07-28T01:57:08.881338" elapsed="0.000441">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-07-28T01:57:08.881873" 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-07-28T01:57:08.880992" elapsed="0.000907"/>
</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-07-28T01:57:08.882264" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.882009" elapsed="0.000313"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.882895" 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-07-28T01:57:08.882597" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.882346" elapsed="0.000611"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.881990" elapsed="0.000988"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.885496" 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-07-28T01:57:08.883132" elapsed="0.002393"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:08.885577" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:57:08.885771" 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-07-28T01:57:08.880593" elapsed="0.005203"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.887502" 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-07-28T01:57:08.887190" elapsed="0.000358"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.888015" 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-07-28T01:57:08.887741" elapsed="0.000805"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.888992" 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-07-28T01:57:08.888704" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.889497" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.889189" elapsed="0.000353"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:08.890435" 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-07-28T01:57:08.890232" elapsed="0.000243"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:08.890837" 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-07-28T01:57:08.890664" 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-07-28T01:57:08.891012" elapsed="0.000236"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.891709" 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-07-28T01:57:08.891403" elapsed="0.000349"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:08.891794" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:08.891987" 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-07-28T01:57:08.889785" elapsed="0.002228"/>
</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-07-28T01:57:08.921853" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:08.922326" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=5000', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:08.922764" 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-07-28T01:57:08.894345" elapsed="0.028490"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.892242" elapsed="0.030766"/>
</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-07-28T01:57:08.923578" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.923081" elapsed="0.000731"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.892066" elapsed="0.031804"/>
</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-07-28T01:57:08.933251" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.926989" elapsed="0.006514"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.926306" elapsed="0.007296"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.926260" elapsed="0.007406"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.936903" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:08.934358" elapsed="0.002593"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.933877" elapsed="0.003108"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.933831" elapsed="0.003179"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.937828" 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-07-28T01:57:08.937280" elapsed="0.000577"/>
</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-07-28T01:57:08.938230" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.937928" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.938895" 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-07-28T01:57:08.938547" elapsed="0.000375"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.938313" elapsed="0.000644"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.937910" elapsed="0.001106"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.939626" 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-07-28T01:57:08.939194" elapsed="0.000459"/>
</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-07-28T01:57:08.940023" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.939767" elapsed="0.000350"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:08.940705" 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-07-28T01:57:08.940319" elapsed="0.000414"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:08.940142" elapsed="0.000626"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.939747" elapsed="0.001043"/>
</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-07-28T01:57:08.940985" elapsed="0.000401"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:08.941944" 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-07-28T01:57:08.941589" elapsed="0.000382"/>
</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-07-28T01:57:08.942166" elapsed="0.002419"/>
</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-07-28T01:57:08.924978" elapsed="0.019680"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:08.944892" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:08.944772" elapsed="0.000172"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.944716" elapsed="0.000251"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:08.947637" 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-07-28T01:57:08.945165" elapsed="0.002500"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:08.947747" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:57:08.947923" 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-07-28T01:57:08.886161" elapsed="0.061787"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.948124" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:08.948290" 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-07-28T01:57:08.461865" elapsed="0.486450"/>
</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-07-28T01:57:08.948735" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:08.948421" elapsed="0.000386"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:08.948404" elapsed="0.000427"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:08.948863" elapsed="0.000062"/>
</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-07-28T01:57:08.458883" elapsed="0.490147"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:08.446402" elapsed="0.502681"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:07.445167" elapsed="1.503960"/>
</for>
<doc>Add 100 groups of type 1 in every switch.</doc>
<status status="PASS" start="2026-07-28T01:57:07.444784" elapsed="1.504516"/>
</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-07-28T01:57:08.953262" 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-07-28T01:57:08.952766" elapsed="0.000528"/>
</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-07-28T01:57:08.998386" 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-07-28T01:57:08.997951" elapsed="0.000468"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:08.999305" 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-07-28T01:57:08.999020" elapsed="0.000407">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-07-28T01:57:08.999542" 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-07-28T01:57:08.998641" elapsed="0.000926"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.000203" 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-07-28T01:57:08.999735" elapsed="0.000497"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.000588" 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-07-28T01:57:09.000767" 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-07-28T01:57:09.000395" elapsed="0.000398"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.001233" 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-07-28T01:57:09.000948" elapsed="0.000332"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.002410" 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-07-28T01:57:09.002119" elapsed="0.000354"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.002946" 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-07-28T01:57:09.002637" elapsed="0.000335"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.003760" 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-07-28T01:57:09.003379" elapsed="0.000445"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:09.005015" 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-07-28T01:57:09.004511" elapsed="0.000533"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:09.005099" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:57:09.005263" 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-07-28T01:57:09.004014" elapsed="0.001274"/>
</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-07-28T01:57:09.005516" elapsed="0.000329"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:57:09.003204" elapsed="0.002685"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:09.003026" elapsed="0.002903"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:09.005973" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:57:09.006165" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:09.001754" elapsed="0.004438"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.001420" elapsed="0.004805"/>
</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-07-28T01:57:09.006401" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.006251" elapsed="0.000223"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.001334" elapsed="0.005199"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.007283" 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-07-28T01:57:09.006680" elapsed="0.000631"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.007360" 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-07-28T01:57:08.997201" elapsed="0.010300"/>
</kw>
<msg time="2026-07-28T01:57:09.007556" 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-07-28T01:57:08.984201" elapsed="0.023407"/>
</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-07-28T01:57:09.020875" elapsed="0.000053"/>
</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-07-28T01:57:09.033771" elapsed="0.000032"/>
</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-07-28T01:57:09.046595" 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-07-28T01:57:09.046867" elapsed="0.000025"/>
</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-07-28T01:57:09.047063" 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-07-28T01:57:09.047557" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.047379" elapsed="0.000345"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:09.047361" elapsed="0.000394"/>
</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-07-28T01:57:09.047907" elapsed="0.000022"/>
</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-07-28T01:57:09.048115" elapsed="0.000022"/>
</kw>
<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-07-28T01:57:09.048287" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:09.047316" elapsed="0.001025"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:09.047187" elapsed="0.001184"/>
</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-07-28T01:57:09.048576" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:09.048660" elapsed="0.000018"/>
</return>
<msg time="2026-07-28T01:57:09.048853" 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-07-28T01:57:08.979752" elapsed="0.069131"/>
</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-07-28T01:57:09.060445" elapsed="0.000499"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.074912" 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-07-28T01:57:09.074471" elapsed="0.000502"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.075846" 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-07-28T01:57:09.075543" elapsed="0.000387">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-07-28T01:57:09.076024" 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-07-28T01:57:09.075145" elapsed="0.000904"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.076661" 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-07-28T01:57:09.076215" elapsed="0.000473"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.077032" 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-07-28T01:57:09.077238" 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-07-28T01:57:09.076888" elapsed="0.000377"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.077734" 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-07-28T01:57:09.077482" 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-07-28T01:57:09.078184" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.077847" elapsed="0.000395"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.078760" 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-07-28T01:57:09.078448" elapsed="0.000374"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.078266" elapsed="0.000593"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.077829" elapsed="0.001052"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.079520" 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-07-28T01:57:09.079028" elapsed="0.000520"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.079596" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:09.079753" 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-07-28T01:57:09.073769" elapsed="0.006009"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.094038" 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-07-28T01:57:09.093621" elapsed="0.000445"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.094826" 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-07-28T01:57:09.094623" elapsed="0.000313">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-07-28T01:57:09.095030" 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-07-28T01:57:09.094229" elapsed="0.000826"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.095659" 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-07-28T01:57:09.095218" elapsed="0.000501"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.096016" 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-07-28T01:57:09.096183" 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-07-28T01:57:09.095882" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.096672" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.096364" elapsed="0.000353"/>
</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-07-28T01:57:09.097111" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.096783" elapsed="0.000387"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.097734" 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-07-28T01:57:09.097340" elapsed="0.000420"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.097194" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.096765" elapsed="0.001053"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.098518" 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-07-28T01:57:09.098025" elapsed="0.000520"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.098594" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:09.098745" 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-07-28T01:57:09.092878" elapsed="0.005891"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.112002" 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-07-28T01:57:09.111625" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.112755" 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-07-28T01:57:09.112543" elapsed="0.000274">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-07-28T01:57:09.112910" 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-07-28T01:57:09.112192" elapsed="0.000743"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.113590" 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-07-28T01:57:09.113136" elapsed="0.000482"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.113920" 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-07-28T01:57:09.114060" 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-07-28T01:57:09.113782" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.114749" 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-07-28T01:57:09.114365" elapsed="0.000457"/>
</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-07-28T01:57:09.115344" elapsed="0.000037"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.114919" elapsed="0.000511"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.116131" 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-07-28T01:57:09.115696" elapsed="0.000472"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.115487" elapsed="0.000731"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.114893" elapsed="0.001355"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.117354" 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-07-28T01:57:09.116492" elapsed="0.000912"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.117508" elapsed="0.000044"/>
</return>
<msg time="2026-07-28T01:57:09.117732" 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-07-28T01:57:09.111065" elapsed="0.006704"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.118361" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:09.117999" elapsed="0.000398"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.119193" 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-07-28T01:57:09.118659" elapsed="0.000571"/>
</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-07-28T01:57:09.120147" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.119799" elapsed="0.000432"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.119779" elapsed="0.000486"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.121001" 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-07-28T01:57:09.120485" elapsed="0.000554"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.122357" 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-07-28T01:57:09.121273" elapsed="0.001120"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.122571" elapsed="0.000206"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:09.119733" elapsed="0.003083"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.123252" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.123004" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.122984" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.124047" 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-07-28T01:57:09.123675" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.124843" 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-07-28T01:57:09.124232" 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-07-28T01:57:09.125080" elapsed="0.000190"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:09.122950" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.125786" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.125541" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.125526" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.126580" 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-07-28T01:57:09.126194" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.127356" 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-07-28T01:57:09.126764" 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-07-28T01:57:09.127572" elapsed="0.000187"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:09.125492" 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-07-28T01:57:09.128232" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.127989" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.127973" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.129024" 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-07-28T01:57:09.128655" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.129845" 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-07-28T01:57:09.129206" elapsed="0.000667"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.130039" elapsed="0.000187"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:09.127934" 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-07-28T01:57:09.130715" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.130470" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.130438" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.131516" 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-07-28T01:57:09.131128" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.132290" 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-07-28T01:57:09.131703" 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-07-28T01:57:09.132492" elapsed="0.000195"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:09.130398" 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-07-28T01:57:09.133145" elapsed="0.000229"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.132905" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.132890" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.133971" 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-07-28T01:57:09.133603" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.134761" 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-07-28T01:57:09.134157" 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-07-28T01:57:09.134957" elapsed="0.000185"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:09.132860" 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-07-28T01:57:09.135636" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.135361" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.135346" elapsed="0.000593"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.136486" 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-07-28T01:57:09.136092" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.137277" 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-07-28T01:57:09.136674" 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-07-28T01:57:09.137501" elapsed="0.000188"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:09.135316" elapsed="0.002411"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.138180" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.137921" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.137907" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.138985" 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-07-28T01:57:09.138597" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.139945" 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-07-28T01:57:09.139180" elapsed="0.000794"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.140148" elapsed="0.000187"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:09.137875" elapsed="0.002499"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.140827" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.140582" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.140564" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.141647" 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-07-28T01:57:09.141232" elapsed="0.000441"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.142433" 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-07-28T01:57:09.141835" 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-07-28T01:57:09.142641" elapsed="0.000192"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:09.140525" 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-07-28T01:57:09.143304" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.143062" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.143047" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.144092" 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-07-28T01:57:09.143725" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.144893" 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-07-28T01:57:09.144276" 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-07-28T01:57:09.145091" elapsed="0.000185"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:09.143016" 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-07-28T01:57:09.145818" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.145569" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.145554" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.146606" 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-07-28T01:57:09.146219" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.147391" 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-07-28T01:57:09.146801" 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-07-28T01:57:09.147595" elapsed="0.000196"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:09.145522" elapsed="0.002340"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.148307" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.148056" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.148036" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.149098" 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-07-28T01:57:09.148730" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.149934" 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-07-28T01:57:09.149294" 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-07-28T01:57:09.150121" elapsed="0.000195"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:09.148003" elapsed="0.002352"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.150807" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.150554" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.150540" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.151597" 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-07-28T01:57:09.151214" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.152423" 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-07-28T01:57:09.151780" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.152628" elapsed="0.000196"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:09.150508" 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-07-28T01:57:09.153293" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.153044" elapsed="0.000526"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.153028" elapsed="0.000566"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.154105" 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-07-28T01:57:09.153740" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.154906" 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-07-28T01:57:09.154288" 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-07-28T01:57:09.155089" elapsed="0.000194"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:09.152998" 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-07-28T01:57:09.155787" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.155518" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.155503" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.156712" 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-07-28T01:57:09.156205" elapsed="0.000540"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.157549" 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-07-28T01:57:09.156905" 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-07-28T01:57:09.157747" elapsed="0.000186"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:09.155470" elapsed="0.002501"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.158398" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.158158" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.158144" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.159193" 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-07-28T01:57:09.158821" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.160000" 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-07-28T01:57:09.159383" elapsed="0.000712"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.160263" elapsed="0.000213"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:09.158113" 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-07-28T01:57:09.160946" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.160694" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.160680" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.161773" 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-07-28T01:57:09.161380" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.162584" 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-07-28T01:57:09.161956" 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-07-28T01:57:09.162785" elapsed="0.000188"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:09.160650" elapsed="0.002362"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.163449" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.163202" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.163181" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.164237" 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-07-28T01:57:09.163872" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.165037" 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-07-28T01:57:09.164418" 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-07-28T01:57:09.165224" elapsed="0.000257"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:09.163146" elapsed="0.002374"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.166012" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.165711" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.165691" elapsed="0.000622"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.166955" 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-07-28T01:57:09.166514" elapsed="0.000471"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.167803" 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-07-28T01:57:09.167173" 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-07-28T01:57:09.167989" elapsed="0.000183"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:09.165656" elapsed="0.002554"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.168663" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.168404" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.168388" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.169493" 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-07-28T01:57:09.169070" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.170268" 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-07-28T01:57:09.169679" 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-07-28T01:57:09.170468" elapsed="0.000198"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:09.168357" elapsed="0.002348"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.171135" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.170889" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.170874" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.171917" 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-07-28T01:57:09.171551" elapsed="0.000436"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.172767" 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-07-28T01:57:09.172149" 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-07-28T01:57:09.172955" elapsed="0.000185"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:09.170843" 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-07-28T01:57:09.173656" elapsed="0.000320"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.173396" elapsed="0.000620"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.173381" elapsed="0.000659"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.174572" 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-07-28T01:57:09.174197" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.175358" 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-07-28T01:57:09.174768" 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-07-28T01:57:09.175573" elapsed="0.000189"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:09.173348" elapsed="0.002461"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.176250" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.175996" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.175982" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.177036" 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-07-28T01:57:09.176669" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.177864" 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-07-28T01:57:09.177219" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.178053" elapsed="0.000183"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:09.175951" 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-07-28T01:57:09.178737" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.178482" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.178466" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.179523" 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-07-28T01:57:09.179143" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.180309" 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-07-28T01:57:09.179710" 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-07-28T01:57:09.180522" elapsed="0.000190"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:09.178419" 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-07-28T01:57:09.181186" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.180941" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.180921" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.182023" 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-07-28T01:57:09.181653" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.182823" 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-07-28T01:57:09.182216" 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-07-28T01:57:09.183018" elapsed="0.000187"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:09.180885" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.183741" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.183435" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.183420" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.184539" 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-07-28T01:57:09.184152" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.185345" 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-07-28T01:57:09.184728" 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-07-28T01:57:09.185564" elapsed="0.000189"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:09.183387" 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-07-28T01:57:09.186236" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.185986" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.185972" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.187027" 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-07-28T01:57:09.186660" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.187812" 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-07-28T01:57:09.187209" 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-07-28T01:57:09.188009" elapsed="0.000185"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:09.185941" 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-07-28T01:57:09.188696" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.188427" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.188410" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.189607" 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-07-28T01:57:09.189104" elapsed="0.000530"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.190470" 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-07-28T01:57:09.189832" 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-07-28T01:57:09.190659" elapsed="0.000226"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:09.188379" elapsed="0.002544"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.191516" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.191108" elapsed="0.000672"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.191093" elapsed="0.000712"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.192376" 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-07-28T01:57:09.191983" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.193226" 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-07-28T01:57:09.192574" 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-07-28T01:57:09.193504" elapsed="0.000187"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:09.191062" elapsed="0.002667"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.194255" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.193981" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.193967" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.195056" 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-07-28T01:57:09.194702" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.195907" 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-07-28T01:57:09.195272" 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-07-28T01:57:09.196169" elapsed="0.000221"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:09.193935" elapsed="0.002494"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.196901" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.196624" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.196610" elapsed="0.000574"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.197769" 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-07-28T01:57:09.197355" elapsed="0.000441"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.198581" 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-07-28T01:57:09.197952" 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-07-28T01:57:09.198765" elapsed="0.000225"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:09.196579" elapsed="0.002448"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.199498" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.199206" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.199191" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.200288" 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-07-28T01:57:09.199933" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.201138" 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-07-28T01:57:09.200524" 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-07-28T01:57:09.201391" elapsed="0.000205"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:09.199161" elapsed="0.002474"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.202094" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.201816" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.201801" elapsed="0.000575"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.202924" 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-07-28T01:57:09.202535" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.203781" 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-07-28T01:57:09.203105" elapsed="0.000705"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.203964" elapsed="0.000182"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:09.201770" elapsed="0.002447"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.204652" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.204398" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.204384" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.205491" 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-07-28T01:57:09.205075" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.206286" 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-07-28T01:57:09.205674" 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-07-28T01:57:09.206523" elapsed="0.000184"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:09.204353" elapsed="0.002429"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.207240" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.206966" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.206951" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.208072" 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-07-28T01:57:09.207681" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.208953" 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-07-28T01:57:09.208289" elapsed="0.000692"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.209173" elapsed="0.000205"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:09.206920" elapsed="0.002544"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.210042" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.209794" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.209638" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.210925" 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-07-28T01:57:09.210531" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.211780" 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-07-28T01:57:09.211114" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.211964" elapsed="0.000221"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:09.209607" elapsed="0.002617"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.212740" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.212441" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.212427" elapsed="0.000599"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.213647" 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-07-28T01:57:09.213170" elapsed="0.000505"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.214497" 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-07-28T01:57:09.213832" elapsed="0.000695"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.214719" elapsed="0.000185"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:09.212396" elapsed="0.002545"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.215399" elapsed="0.000233"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.215158" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.215143" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.216265" 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-07-28T01:57:09.215871" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.217128" 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-07-28T01:57:09.216500" 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-07-28T01:57:09.217383" elapsed="0.000208"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:09.215075" elapsed="0.002555"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.218094" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.217855" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.217839" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.218925" 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-07-28T01:57:09.218535" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.219768" 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-07-28T01:57:09.219145" 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-07-28T01:57:09.219989" elapsed="0.000217"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:09.217806" elapsed="0.002440"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.220711" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.220423" elapsed="0.000616"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.220409" elapsed="0.000658"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.221650" 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-07-28T01:57:09.221214" elapsed="0.000462"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.222505" 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-07-28T01:57:09.221869" elapsed="0.000707"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.222736" elapsed="0.000220"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:09.220378" elapsed="0.002616"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.223446" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.223172" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.223158" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.224279" 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-07-28T01:57:09.223889" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.225130" 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-07-28T01:57:09.224473" elapsed="0.000685"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.225363" elapsed="0.000244"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:09.223128" elapsed="0.002517"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.226098" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.225822" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.225808" elapsed="0.000571"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.226934" 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-07-28T01:57:09.226538" elapsed="0.000460"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.227820" 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-07-28T01:57:09.227155" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.228003" elapsed="0.000221"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:09.225778" elapsed="0.002483"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.228896" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.228609" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.228425" elapsed="0.000761"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.229766" 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-07-28T01:57:09.229355" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.230645" 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-07-28T01:57:09.229985" 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-07-28T01:57:09.230828" elapsed="0.000218"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:09.228395" elapsed="0.002689"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.231553" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.231298" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.231280" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.232329" 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-07-28T01:57:09.231980" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.233143" 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-07-28T01:57:09.232562" 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-07-28T01:57:09.233344" elapsed="0.000238"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:09.231217" elapsed="0.002435"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.234070" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.233833" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.233819" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.234866" 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-07-28T01:57:09.234513" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.235634" 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-07-28T01:57:09.235046" 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-07-28T01:57:09.235860" elapsed="0.000184"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:09.233787" 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-07-28T01:57:09.236549" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.236259" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.236244" elapsed="0.000590"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.237405" 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-07-28T01:57:09.236980" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.238267" 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-07-28T01:57:09.237604" elapsed="0.000692"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.238464" elapsed="0.000226"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:09.236214" elapsed="0.002514"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.239191" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.238946" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.238928" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.240028" 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-07-28T01:57:09.239637" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.240882" 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-07-28T01:57:09.240208" elapsed="0.000703"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.241064" elapsed="0.000242"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:09.238862" elapsed="0.002483"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.241823" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.241543" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.241528" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.242661" 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-07-28T01:57:09.242258" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.243470" 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-07-28T01:57:09.242845" 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-07-28T01:57:09.243653" elapsed="0.000221"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:09.241497" 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-07-28T01:57:09.244365" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.244089" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.244075" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.245204" 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-07-28T01:57:09.244806" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.246085" 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-07-28T01:57:09.245409" elapsed="0.000736"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.246304" elapsed="0.000200"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:09.244044" 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-07-28T01:57:09.247947" elapsed="0.000232"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.247690" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.246749" elapsed="0.001496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.248812" 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-07-28T01:57:09.248393" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.249707" 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-07-28T01:57:09.249036" 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-07-28T01:57:09.249896" elapsed="0.000222"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:09.246718" elapsed="0.003439"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.250633" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.250340" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.250325" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.251486" 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-07-28T01:57:09.251030" elapsed="0.000483"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.252323" 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-07-28T01:57:09.251707" 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-07-28T01:57:09.252525" elapsed="0.000222"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:09.250294" elapsed="0.002492"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.253207" elapsed="0.000260"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.252968" elapsed="0.000540"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.252953" elapsed="0.000580"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.254072" 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-07-28T01:57:09.253678" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.254887" 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-07-28T01:57:09.254255" 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-07-28T01:57:09.255072" elapsed="0.000230"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:09.252922" elapsed="0.002418"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.255815" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.255537" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.255523" elapsed="0.000580"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.256658" 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-07-28T01:57:09.256247" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.257528" 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-07-28T01:57:09.256841" elapsed="0.000716"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.257714" elapsed="0.000220"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:09.255490" elapsed="0.002482"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.258426" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.258151" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.258137" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.259216" 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-07-28T01:57:09.258829" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.260066" 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-07-28T01:57:09.259487" 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-07-28T01:57:09.260293" elapsed="0.000202"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:09.258107" elapsed="0.002463"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.261032" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.260753" elapsed="0.000540"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.260738" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.261925" 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-07-28T01:57:09.261526" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.262774" 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-07-28T01:57:09.262145" 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-07-28T01:57:09.262998" elapsed="0.000184"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:09.260707" elapsed="0.002512"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.263695" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.263441" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.263427" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.264538" 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-07-28T01:57:09.264166" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.265382" 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-07-28T01:57:09.264756" 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-07-28T01:57:09.265616" elapsed="0.000186"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:09.263395" elapsed="0.002445"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.266421" elapsed="0.000242"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.266172" elapsed="0.000531"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.266042" elapsed="0.000686"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.267275" 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-07-28T01:57:09.266874" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.268126" 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-07-28T01:57:09.267472" elapsed="0.000683"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.268311" elapsed="0.000246"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:09.266010" elapsed="0.002586"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.269061" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.268778" elapsed="0.000560"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.268763" elapsed="0.000600"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.269919" 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-07-28T01:57:09.269523" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.270762" 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-07-28T01:57:09.270101" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.270984" elapsed="0.000189"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:09.268732" elapsed="0.002479"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.271723" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.271392" elapsed="0.000599"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.271378" elapsed="0.000639"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.272567" 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-07-28T01:57:09.272163" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.273441" 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-07-28T01:57:09.272750" elapsed="0.000735"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.273679" elapsed="0.000189"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:09.271347" elapsed="0.002559"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.274370" elapsed="0.000238"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.274130" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.274114" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.275211" 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-07-28T01:57:09.274817" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.276027" 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-07-28T01:57:09.275394" elapsed="0.000697"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.276250" elapsed="0.000183"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:09.274080" 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-07-28T01:57:09.276944" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.276669" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.276654" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.277787" 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-07-28T01:57:09.277373" elapsed="0.000440"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.278601" 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-07-28T01:57:09.277968" 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-07-28T01:57:09.278785" elapsed="0.000222"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:09.276624" 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-07-28T01:57:09.279517" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.279226" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.279212" elapsed="0.000590"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.280335" 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-07-28T01:57:09.279946" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.281184" 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-07-28T01:57:09.280530" 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-07-28T01:57:09.281382" elapsed="0.000238"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:09.279182" elapsed="0.002476"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.282110" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.281837" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.281822" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.282938" 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-07-28T01:57:09.282549" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.283786" 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-07-28T01:57:09.283155" 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-07-28T01:57:09.284045" elapsed="0.000187"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:09.281792" elapsed="0.002514"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.284906" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.284619" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.284492" elapsed="0.000703"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.285787" 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-07-28T01:57:09.285369" elapsed="0.000444"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.286645" 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-07-28T01:57:09.285969" elapsed="0.000704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.286830" elapsed="0.000227"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:09.284446" elapsed="0.002650"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.287569" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.287278" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.287263" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.288392" 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-07-28T01:57:09.288001" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.289237" 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-07-28T01:57:09.288628" 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-07-28T01:57:09.289494" elapsed="0.000188"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:09.287232" 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-07-28T01:57:09.290224" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.289939" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.289925" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.291059" 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-07-28T01:57:09.290671" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.291863" 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-07-28T01:57:09.291240" 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-07-28T01:57:09.292084" elapsed="0.000185"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:09.289894" elapsed="0.002413"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.292776" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.292501" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.292486" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.293639" 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-07-28T01:57:09.293203" elapsed="0.000463"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.294431" 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-07-28T01:57:09.293821" 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-07-28T01:57:09.294668" elapsed="0.000183"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:09.292440" elapsed="0.002448"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.295342" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.295105" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.295091" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.296170" 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-07-28T01:57:09.295783" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.297018" 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-07-28T01:57:09.296387" 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-07-28T01:57:09.297204" elapsed="0.000267"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:09.295059" elapsed="0.002452"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.297933" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.297695" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.297680" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.298775" 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-07-28T01:57:09.298364" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.299581" 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-07-28T01:57:09.298957" 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-07-28T01:57:09.299765" elapsed="0.000223"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:09.297649" 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-07-28T01:57:09.300498" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.300206" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.300191" elapsed="0.000591"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.301329" 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-07-28T01:57:09.300924" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.302215" 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-07-28T01:57:09.301560" elapsed="0.000684"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.302399" elapsed="0.000237"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:09.300160" elapsed="0.002514"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.303290" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.303004" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.302876" elapsed="0.000682"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.304131" 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-07-28T01:57:09.303741" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.304989" 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-07-28T01:57:09.304316" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.305217" elapsed="0.000203"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:09.302809" elapsed="0.002672"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.305976" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.305702" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.305687" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.306773" 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-07-28T01:57:09.306368" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.307622" 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-07-28T01:57:09.306994" 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-07-28T01:57:09.307845" elapsed="0.000187"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:09.305655" elapsed="0.002415"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.308545" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.308289" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.308275" elapsed="0.000591"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.309501" 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-07-28T01:57:09.309052" elapsed="0.000478"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.310341" 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-07-28T01:57:09.309690" 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-07-28T01:57:09.310542" elapsed="0.000225"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:09.308243" elapsed="0.002563"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.311263" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.310986" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.310971" elapsed="0.000593"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.312107" 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-07-28T01:57:09.311709" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.312957" 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-07-28T01:57:09.312288" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.313141" elapsed="0.000238"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:09.310940" elapsed="0.002477"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.313890" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.313614" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.313600" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.314718" 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-07-28T01:57:09.314313" elapsed="0.000433"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.315560" 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-07-28T01:57:09.314899" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.315743" elapsed="0.000219"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:09.313568" elapsed="0.002431"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.316465" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.316216" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.316201" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.317335" 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-07-28T01:57:09.316929" elapsed="0.000433"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.318227" 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-07-28T01:57:09.317567" 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-07-28T01:57:09.318410" elapsed="0.000235"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:09.316170" elapsed="0.002512"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.319138" elapsed="0.000219"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.318900" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.318885" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.319998" 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-07-28T01:57:09.319609" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.320844" 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-07-28T01:57:09.320179" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.321063" elapsed="0.000231"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:09.318852" elapsed="0.002552"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.322040" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.321753" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.321592" elapsed="0.000736"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.322884" 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-07-28T01:57:09.322489" elapsed="0.000421"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.323776" 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-07-28T01:57:09.323104" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.323963" elapsed="0.000219"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:09.321561" elapsed="0.002660"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.324690" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.324400" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.324386" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.325548" 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-07-28T01:57:09.325121" elapsed="0.000454"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.326382" 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-07-28T01:57:09.325765" 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-07-28T01:57:09.326582" elapsed="0.000225"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:09.324355" elapsed="0.002490"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.327303" elapsed="0.000238"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.327062" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.327045" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.328099" 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-07-28T01:57:09.327749" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.328944" 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-07-28T01:57:09.328315" 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-07-28T01:57:09.329164" elapsed="0.000212"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:09.326979" elapsed="0.002435"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.329888" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.329649" elapsed="0.000497"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.329634" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.330721" 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-07-28T01:57:09.330315" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.331533" 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-07-28T01:57:09.330901" 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-07-28T01:57:09.331751" elapsed="0.000184"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:09.329602" elapsed="0.002370"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.332427" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.332190" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.332175" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.333281" 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-07-28T01:57:09.332866" elapsed="0.000442"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.334088" 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-07-28T01:57:09.333477" 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-07-28T01:57:09.334344" elapsed="0.000202"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:09.332143" elapsed="0.002441"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.335041" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.334803" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.334788" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.335874" 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-07-28T01:57:09.335484" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.336715" 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-07-28T01:57:09.336091" 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-07-28T01:57:09.336899" elapsed="0.000225"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:09.334756" 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-07-28T01:57:09.337656" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.337364" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.337349" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.338431" 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-07-28T01:57:09.338078" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.339283" 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-07-28T01:57:09.338668" 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-07-28T01:57:09.339479" elapsed="0.000220"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:09.337318" 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-07-28T01:57:09.340308" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.340025" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.339901" elapsed="0.000671"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.341107" 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-07-28T01:57:09.340753" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.341981" 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-07-28T01:57:09.341343" elapsed="0.000667"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.342167" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:09.339871" elapsed="0.002517"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.342902" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.342625" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.342610" elapsed="0.000541"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.343702" 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-07-28T01:57:09.343292" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.344554" 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-07-28T01:57:09.343921" 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-07-28T01:57:09.344738" elapsed="0.000220"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:09.342579" elapsed="0.002418"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.345502" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.345178" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.345164" elapsed="0.000588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.346282" 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-07-28T01:57:09.345930" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.347170" 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-07-28T01:57:09.346554" 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-07-28T01:57:09.347355" elapsed="0.000242"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:09.345133" elapsed="0.002504"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.348093" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.347819" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.347805" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.348899" 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-07-28T01:57:09.348503" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.349725" 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-07-28T01:57:09.349081" 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-07-28T01:57:09.349948" elapsed="0.000184"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:09.347774" elapsed="0.002395"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.350639" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.350385" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.350370" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.351414" 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-07-28T01:57:09.351064" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.352296" 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-07-28T01:57:09.351649" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.352527" elapsed="0.000184"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:09.350337" elapsed="0.002411"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.353257" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.352964" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.352950" elapsed="0.000607"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.354127" 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-07-28T01:57:09.353736" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.355009" 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-07-28T01:57:09.354346" elapsed="0.000692"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.355229" elapsed="0.000185"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:09.352919" elapsed="0.002548"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.355962" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.355689" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.355673" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.356794" 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-07-28T01:57:09.356387" elapsed="0.000433"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.357707" 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-07-28T01:57:09.357010" elapsed="0.000727"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.357892" elapsed="0.000219"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:09.355641" elapsed="0.002507"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.358810" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.358491" elapsed="0.000585"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.358351" elapsed="0.000751"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.359696" 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-07-28T01:57:09.359248" elapsed="0.000477"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.360542" 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-07-28T01:57:09.359882" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.360726" elapsed="0.000223"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:09.358318" elapsed="0.002670"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.361484" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.361167" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.361152" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.362308" 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-07-28T01:57:09.361948" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.363153" 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-07-28T01:57:09.362536" 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-07-28T01:57:09.363337" elapsed="0.000237"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:09.361122" elapsed="0.002490"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.364072" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.363793" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.363778" elapsed="0.000581"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.364910" 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-07-28T01:57:09.364518" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.365816" 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-07-28T01:57:09.365126" elapsed="0.000721"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.366003" elapsed="0.000184"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:09.363747" elapsed="0.002476"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.366700" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.366445" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.366430" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.367559" 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-07-28T01:57:09.367129" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.368351" 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-07-28T01:57:09.367743" 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-07-28T01:57:09.368583" elapsed="0.000187"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:09.366398" elapsed="0.002409"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.369363" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.369025" elapsed="0.000608"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.369011" elapsed="0.000648"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.370176" 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-07-28T01:57:09.369806" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.370985" 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-07-28T01:57:09.370370" 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-07-28T01:57:09.371210" elapsed="0.000190"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:09.368978" elapsed="0.002466"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.371886" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.371646" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.371632" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.372672" 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-07-28T01:57:09.372287" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.373508" 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-07-28T01:57:09.372869" 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-07-28T01:57:09.373708" elapsed="0.000190"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:09.371600" 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-07-28T01:57:09.374574" elapsed="0.000338"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.374178" elapsed="0.000791"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.374153" elapsed="0.000850"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.375812" 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-07-28T01:57:09.375217" elapsed="0.000642"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.376947" 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-07-28T01:57:09.376084" elapsed="0.000911"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.377241" elapsed="0.000312"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:09.374098" elapsed="0.003510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.378393" elapsed="0.000302"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.378027" elapsed="0.000725"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.377853" elapsed="0.000935"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.379545" 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-07-28T01:57:09.379006" elapsed="0.000577"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.380666" 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-07-28T01:57:09.379807" elapsed="0.000900"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.380930" elapsed="0.000274"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:09.377802" elapsed="0.003505"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.381941" elapsed="0.000293"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.381602" elapsed="0.000680"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.381581" elapsed="0.000725"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.382850" 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-07-28T01:57:09.382477" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.383645" 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-07-28T01:57:09.383032" 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-07-28T01:57:09.383832" elapsed="0.000184"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:09.381533" elapsed="0.002528"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:09.119311" elapsed="0.264784"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.385447" 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-07-28T01:57:09.384254" elapsed="0.001239"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.385588" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:57:09.385777" 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-07-28T01:57:09.059432" elapsed="0.326372"/>
</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-07-28T01:57:09.387214" 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-07-28T01:57:09.386914" elapsed="0.000377">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-07-28T01:57:09.387386" 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-07-28T01:57:09.386554" elapsed="0.000857"/>
</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-07-28T01:57:09.387761" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.387499" elapsed="0.000330"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.388364" 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-07-28T01:57:09.388057" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.387853" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.387480" elapsed="0.000967"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.390877" 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-07-28T01:57:09.388631" elapsed="0.002273"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:09.390956" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:09.391117" 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-07-28T01:57:09.386183" elapsed="0.004965"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.392757" 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-07-28T01:57:09.392490" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.393248" 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-07-28T01:57:09.392958" elapsed="0.000747"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.394135" 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-07-28T01:57:09.393866" elapsed="0.000314"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.394605" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.394333" elapsed="0.000316"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:09.395506" 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-07-28T01:57:09.395278" elapsed="0.000255"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:09.395875" 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-07-28T01:57:09.395699" elapsed="0.000207"/>
</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-07-28T01:57:09.396062" elapsed="0.000204"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.396704" 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-07-28T01:57:09.396424" elapsed="0.000323"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:09.396792" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:57:09.396959" 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-07-28T01:57:09.394861" elapsed="0.002123"/>
</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-07-28T01:57:09.444177" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:09.444601" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:09.444882" 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-07-28T01:57:09.399343" elapsed="0.045604"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.397258" elapsed="0.047800"/>
</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-07-28T01:57:09.445595" elapsed="0.000069"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.445131" elapsed="0.000646"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.397037" elapsed="0.048789"/>
</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-07-28T01:57:09.454195" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.448405" elapsed="0.005848"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.447867" elapsed="0.006435"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.447821" elapsed="0.006507"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.456867" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.454639" elapsed="0.002275"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.454385" elapsed="0.002563"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.454369" elapsed="0.002604"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.457628" 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-07-28T01:57:09.457170" elapsed="0.000486"/>
</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-07-28T01:57:09.457999" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.457728" elapsed="0.000330"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.458606" 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-07-28T01:57:09.458268" elapsed="0.000364"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.458082" elapsed="0.000586"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.457710" elapsed="0.000980"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.459286" 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-07-28T01:57:09.458877" elapsed="0.000437"/>
</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-07-28T01:57:09.459670" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.459396" elapsed="0.000332"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.460244" 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-07-28T01:57:09.459941" elapsed="0.000337"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.459752" elapsed="0.000564"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.459378" elapsed="0.000960"/>
</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-07-28T01:57:09.460515" elapsed="0.000365"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:09.461375" 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-07-28T01:57:09.461051" elapsed="0.000357"/>
</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-07-28T01:57:09.461585" elapsed="0.002260"/>
</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-07-28T01:57:09.446754" elapsed="0.017166"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:09.464112" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:09.463995" elapsed="0.000164"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.463976" elapsed="0.000204"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:09.466750" 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-07-28T01:57:09.464343" elapsed="0.002436"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:09.466829" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:57:09.466991" 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-07-28T01:57:09.391507" elapsed="0.075509"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.467127" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:09.467283" 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-07-28T01:57:08.968142" elapsed="0.499170"/>
</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-07-28T01:57:09.467700" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.467427" elapsed="0.000344"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.467409" elapsed="0.000385"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.467827" elapsed="0.000026"/>
</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-07-28T01:57:08.965150" elapsed="0.502801"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:08.952576" elapsed="0.515421"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.468688" 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-07-28T01:57:09.468247" elapsed="0.000469"/>
</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-07-28T01:57:09.521981" 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-07-28T01:57:09.521495" elapsed="0.000525"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.522923" 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-07-28T01:57:09.522602" elapsed="0.000408">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-07-28T01:57:09.523106" 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-07-28T01:57:09.522203" elapsed="0.000928"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.523790" 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-07-28T01:57:09.523338" elapsed="0.000480"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.524173" 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-07-28T01:57:09.524346" 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-07-28T01:57:09.524018" elapsed="0.000389"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.524872" 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-07-28T01:57:09.524585" elapsed="0.000336"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.526102" 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-07-28T01:57:09.525785" elapsed="0.000363"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.526655" 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-07-28T01:57:09.526346" elapsed="0.000368"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.527553" 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-07-28T01:57:09.527120" elapsed="0.000459"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:09.528722" 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-07-28T01:57:09.528183" elapsed="0.000601"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:09.528901" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:57:09.529091" 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-07-28T01:57:09.527815" elapsed="0.001302"/>
</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-07-28T01:57:09.529303" elapsed="0.000364"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:57:09.526965" elapsed="0.002748"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:09.526776" elapsed="0.002976"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:09.529798" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:09.529995" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:09.525424" elapsed="0.004598"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.525008" elapsed="0.005047"/>
</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-07-28T01:57:09.530248" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.530093" elapsed="0.000210"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.524981" elapsed="0.005343"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.531160" 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-07-28T01:57:09.530486" elapsed="0.000704"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.531240" 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-07-28T01:57:09.520805" elapsed="0.010561"/>
</kw>
<msg time="2026-07-28T01:57:09.531421" 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-07-28T01:57:09.507509" elapsed="0.023977"/>
</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-07-28T01:57:09.545346" 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/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-07-28T01:57:09.558481" elapsed="0.000030"/>
</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-07-28T01:57:09.571723" elapsed="0.000058"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:09.571961" 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-07-28T01:57:09.572138" elapsed="0.000030"/>
</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-07-28T01:57:09.572571" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.572406" elapsed="0.000232"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:09.572392" elapsed="0.000270"/>
</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-07-28T01:57:09.572838" elapsed="0.000023"/>
</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-07-28T01:57:09.573062" elapsed="0.000022"/>
</kw>
<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-07-28T01:57:09.573254" elapsed="0.000081"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:09.572362" elapsed="0.001010"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:09.572258" elapsed="0.001141"/>
</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-07-28T01:57:09.573582" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:09.573661" elapsed="0.000018"/>
</return>
<msg time="2026-07-28T01:57:09.573783" 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-07-28T01:57:09.502994" elapsed="0.070851"/>
</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-07-28T01:57:09.585657" elapsed="0.000351"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.600214" 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-07-28T01:57:09.599786" elapsed="0.000456"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.601063" 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-07-28T01:57:09.600841" elapsed="0.000340">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-07-28T01:57:09.601279" 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-07-28T01:57:09.600444" elapsed="0.000860"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.601966" 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-07-28T01:57:09.601493" elapsed="0.000501"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.602338" 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-07-28T01:57:09.602479" 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-07-28T01:57:09.602157" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.602954" 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-07-28T01:57:09.602661" elapsed="0.000339"/>
</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-07-28T01:57:09.603409" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.603066" elapsed="0.000439"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.604077" 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-07-28T01:57:09.603727" elapsed="0.000376"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.603533" elapsed="0.000606"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.603048" elapsed="0.001113"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.604822" 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-07-28T01:57:09.604333" elapsed="0.000516"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.604899" elapsed="0.000076"/>
</return>
<msg time="2026-07-28T01:57:09.605140" 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-07-28T01:57:09.599041" elapsed="0.006125"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.620259" 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-07-28T01:57:09.619834" elapsed="0.000453"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.621150" 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-07-28T01:57:09.620871" elapsed="0.000343">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-07-28T01:57:09.621346" 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-07-28T01:57:09.620503" elapsed="0.000899"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.622058" 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-07-28T01:57:09.621584" elapsed="0.000503"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.622385" 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-07-28T01:57:09.622598" 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-07-28T01:57:09.622249" elapsed="0.000375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.623078" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.622782" elapsed="0.000379"/>
</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-07-28T01:57:09.623615" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.623231" elapsed="0.000444"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.624217" 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-07-28T01:57:09.623899" elapsed="0.000385"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.623699" elapsed="0.000623"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.623213" elapsed="0.001131"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.624983" 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-07-28T01:57:09.624505" elapsed="0.000505"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.625058" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:09.625275" 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-07-28T01:57:09.619100" elapsed="0.006210"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.639378" 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-07-28T01:57:09.638955" elapsed="0.000453"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.640224" 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-07-28T01:57:09.639980" elapsed="0.000308">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-07-28T01:57:09.640382" 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-07-28T01:57:09.639594" elapsed="0.000812"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.641057" 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-07-28T01:57:09.640625" elapsed="0.000488"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:09.641475" 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-07-28T01:57:09.641635" 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-07-28T01:57:09.641279" elapsed="0.000383"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.642163" 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-07-28T01:57:09.641866" elapsed="0.000347"/>
</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-07-28T01:57:09.642600" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.642280" elapsed="0.000380"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.643177" 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-07-28T01:57:09.642830" elapsed="0.000373"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.642684" elapsed="0.000590"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.642262" elapsed="0.001036"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.644141" 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-07-28T01:57:09.643447" elapsed="0.000733"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.644231" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:09.644387" 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-07-28T01:57:09.638318" elapsed="0.006096"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.644927" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:09.644631" elapsed="0.000321"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.645605" 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-07-28T01:57:09.645137" elapsed="0.000494"/>
</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-07-28T01:57:09.646305" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.646066" elapsed="0.000339"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.646051" elapsed="0.000380"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.647027" 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-07-28T01:57:09.646591" elapsed="0.000465"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.649030" 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-07-28T01:57:09.647246" elapsed="0.001814"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.649241" elapsed="0.000265"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:09.646018" elapsed="0.003528"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.650056" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.649776" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.649761" elapsed="0.000604"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.650975" 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-07-28T01:57:09.650563" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.651848" 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-07-28T01:57:09.651195" elapsed="0.000716"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.652081" elapsed="0.000224"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:09.649718" elapsed="0.002627"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.652880" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.652553" elapsed="0.000612"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.652539" elapsed="0.000651"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.653804" 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-07-28T01:57:09.653382" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.654721" 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-07-28T01:57:09.654022" elapsed="0.000729"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.654908" elapsed="0.000225"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:09.652507" elapsed="0.002664"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.655669" elapsed="0.000251"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.655400" elapsed="0.000559"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.655385" elapsed="0.000610"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.656599" 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-07-28T01:57:09.656141" elapsed="0.000486"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.657481" 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-07-28T01:57:09.656785" elapsed="0.000726"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.657681" elapsed="0.000223"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:09.655352" elapsed="0.002600"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.658495" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.658164" elapsed="0.000561"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.658147" elapsed="0.000603"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.659372" 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-07-28T01:57:09.658944" elapsed="0.000454"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.660241" 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-07-28T01:57:09.659570" 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-07-28T01:57:09.660480" elapsed="0.000232"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:09.658090" elapsed="0.002661"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.661238" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.660934" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.660919" elapsed="0.000629"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.662127" 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-07-28T01:57:09.661729" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.662993" 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-07-28T01:57:09.662352" 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-07-28T01:57:09.663202" elapsed="0.000230"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:09.660888" elapsed="0.002602"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.663960" elapsed="0.000260"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.663673" elapsed="0.000587"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.663659" elapsed="0.000625"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.664879" 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-07-28T01:57:09.664439" elapsed="0.000477"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.665804" 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-07-28T01:57:09.665154" 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-07-28T01:57:09.666067" elapsed="0.000185"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:09.663628" elapsed="0.002661"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.666773" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.666534" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.666519" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.667683" 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-07-28T01:57:09.667258" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.668675" 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-07-28T01:57:09.667903" elapsed="0.000801"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.668874" elapsed="0.000263"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:09.666486" elapsed="0.002691"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.669664" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.669371" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.669356" elapsed="0.000569"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.670516" 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-07-28T01:57:09.670103" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.671341" 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-07-28T01:57:09.670703" elapsed="0.000667"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.671544" elapsed="0.000232"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:09.669324" elapsed="0.002491"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.672314" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.671996" elapsed="0.000680"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.671982" elapsed="0.000718"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.673268" 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-07-28T01:57:09.672856" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.674090" 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-07-28T01:57:09.673448" 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-07-28T01:57:09.674288" elapsed="0.000237"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:09.671951" 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-07-28T01:57:09.675103" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.674797" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.674782" elapsed="0.000572"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.675955" 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-07-28T01:57:09.675553" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.676824" 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-07-28T01:57:09.676138" elapsed="0.000714"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.677009" elapsed="0.000245"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:09.674739" elapsed="0.002553"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.677785" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.677503" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.677487" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.678620" 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-07-28T01:57:09.678233" elapsed="0.000450"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.679573" 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-07-28T01:57:09.678880" elapsed="0.000722"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.679802" elapsed="0.000223"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:09.677439" elapsed="0.002626"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.680583" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.680262" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.680247" elapsed="0.000608"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.681482" 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-07-28T01:57:09.681046" elapsed="0.000464"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.682337" 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-07-28T01:57:09.681670" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.682575" elapsed="0.000189"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:09.680215" elapsed="0.002598"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.683310" elapsed="0.000216"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.682996" elapsed="0.000569"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.682981" elapsed="0.000609"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.684171" 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-07-28T01:57:09.683801" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.685054" 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-07-28T01:57:09.684398" elapsed="0.000705"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.685261" elapsed="0.000247"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:09.682950" elapsed="0.002597"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.686022" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.685732" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.685717" elapsed="0.000617"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.687030" 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-07-28T01:57:09.686504" elapsed="0.000553"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.687876" 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-07-28T01:57:09.687227" 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-07-28T01:57:09.688108" elapsed="0.000187"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:09.685686" elapsed="0.002648"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.688834" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.688585" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.688560" elapsed="0.000599"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.689740" 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-07-28T01:57:09.689308" elapsed="0.000459"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.690570" 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-07-28T01:57:09.689924" 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-07-28T01:57:09.690802" elapsed="0.000211"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:09.688491" elapsed="0.002560"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.691547" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.691277" elapsed="0.000566"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.691220" elapsed="0.000650"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.692437" 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-07-28T01:57:09.692017" elapsed="0.000461"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.693380" 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-07-28T01:57:09.692673" elapsed="0.000746"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.693595" elapsed="0.000252"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:09.691190" elapsed="0.002697"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.694363" elapsed="0.000248"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.694109" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.694095" elapsed="0.000580"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.695271" 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-07-28T01:57:09.694819" elapsed="0.000480"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.696176" 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-07-28T01:57:09.695505" 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-07-28T01:57:09.696363" elapsed="0.000245"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:09.694062" elapsed="0.002585"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.697150" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.696841" elapsed="0.000582"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.696825" elapsed="0.000624"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.698014" 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-07-28T01:57:09.697612" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.698893" 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-07-28T01:57:09.698251" 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-07-28T01:57:09.699113" elapsed="0.000196"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:09.696784" elapsed="0.002562"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.699822" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.699544" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.699530" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.700676" 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-07-28T01:57:09.700261" elapsed="0.000441"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.701532" 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-07-28T01:57:09.700868" elapsed="0.000692"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.701714" elapsed="0.000234"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:09.699498" 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-07-28T01:57:09.702441" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.702165" elapsed="0.000557"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.702150" elapsed="0.000597"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.703290" 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-07-28T01:57:09.702891" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.704143" 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-07-28T01:57:09.703485" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.704337" elapsed="0.000233"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:09.702120" elapsed="0.002526"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.705150" elapsed="0.000357"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.704843" elapsed="0.000705"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.704827" elapsed="0.000746"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.706167" 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-07-28T01:57:09.705757" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.707016" 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-07-28T01:57:09.706351" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.707239" elapsed="0.000199"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:09.704784" elapsed="0.002708"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.707965" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.707676" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.707661" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.708813" 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-07-28T01:57:09.708402" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.709781" 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-07-28T01:57:09.709009" 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-07-28T01:57:09.709979" elapsed="0.000219"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:09.707630" elapsed="0.002609"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.710731" elapsed="0.000244"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.710432" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.710418" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.711654" 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-07-28T01:57:09.711235" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.712477" 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-07-28T01:57:09.711837" 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-07-28T01:57:09.712737" elapsed="0.000186"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:09.710386" elapsed="0.002576"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.713447" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.713160" elapsed="0.000538"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.713146" elapsed="0.000600"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.714330" 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-07-28T01:57:09.713927" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.715192" 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-07-28T01:57:09.714527" elapsed="0.000697"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.715381" elapsed="0.000212"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:09.713114" elapsed="0.002517"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.716092" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.715812" elapsed="0.000547"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.715796" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.716908" 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-07-28T01:57:09.716543" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.717818" 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-07-28T01:57:09.717170" elapsed="0.000711"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.718042" elapsed="0.000241"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:09.715766" elapsed="0.002556"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.718805" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.718523" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.718507" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.719620" 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-07-28T01:57:09.719233" elapsed="0.000414"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.720435" 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-07-28T01:57:09.719840" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.720686" elapsed="0.000183"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:09.718474" elapsed="0.002468"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.721433" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.721153" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.721138" elapsed="0.000575"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.722265" 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-07-28T01:57:09.721857" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.723133" 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-07-28T01:57:09.722447" elapsed="0.000715"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.723319" elapsed="0.000217"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:09.721095" elapsed="0.002479"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.724176" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.723806" elapsed="0.000633"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.723791" elapsed="0.000688"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.725028" 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-07-28T01:57:09.724637" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.725925" 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-07-28T01:57:09.725274" 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-07-28T01:57:09.726111" elapsed="0.000229"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:09.723757" elapsed="0.002621"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.726862" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.726577" elapsed="0.000540"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.726563" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.727707" 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-07-28T01:57:09.727290" elapsed="0.000444"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.728577" 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-07-28T01:57:09.727926" 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-07-28T01:57:09.728798" elapsed="0.000187"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:09.726531" elapsed="0.002503"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.729604" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.729301" elapsed="0.000565"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.729264" elapsed="0.000626"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.730438" 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-07-28T01:57:09.730046" elapsed="0.000477"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.731354" 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-07-28T01:57:09.730722" 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-07-28T01:57:09.731565" elapsed="0.000226"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:09.729232" elapsed="0.002598"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.732297" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.732057" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.732043" elapsed="0.000563"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.733208" 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-07-28T01:57:09.732750" elapsed="0.000485"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.734079" 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-07-28T01:57:09.733426" elapsed="0.000683"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.734267" elapsed="0.000244"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:09.732009" elapsed="0.002541"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.735017" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.734742" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.734727" elapsed="0.000571"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.735872" 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-07-28T01:57:09.735468" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.737127" 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-07-28T01:57:09.736092" elapsed="0.001064"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.737349" elapsed="0.000211"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:09.734684" elapsed="0.002914"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.738095" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.737814" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.737800" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.738948" 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-07-28T01:57:09.738570" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.739887" 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-07-28T01:57:09.739188" elapsed="0.000728"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.740082" elapsed="0.000220"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:09.737768" elapsed="0.002572"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.740829" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.740545" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.740530" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.741656" 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-07-28T01:57:09.741273" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.742579" 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-07-28T01:57:09.741877" elapsed="0.000731"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.742764" elapsed="0.000218"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:09.740498" elapsed="0.002534"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.743664" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.743323" elapsed="0.000609"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.743197" elapsed="0.000760"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.744568" 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-07-28T01:57:09.744148" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.745403" 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-07-28T01:57:09.744756" 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-07-28T01:57:09.745651" elapsed="0.000186"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:09.743166" elapsed="0.002709"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.746341" elapsed="0.000279"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.746054" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.746040" elapsed="0.000644"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.747231" 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-07-28T01:57:09.746826" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.748134" 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-07-28T01:57:09.747472" elapsed="0.000691"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.748318" elapsed="0.000249"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:09.746009" elapsed="0.002596"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.749092" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.748823" elapsed="0.000531"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.748808" elapsed="0.000572"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.749976" 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-07-28T01:57:09.749571" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.750845" 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-07-28T01:57:09.750194" elapsed="0.000679"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.751028" elapsed="0.000219"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:09.748774" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.751771" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.751494" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.751478" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.752592" 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-07-28T01:57:09.752209" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.753467" 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-07-28T01:57:09.752773" elapsed="0.000724"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.753664" elapsed="0.000183"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:09.751432" elapsed="0.002486"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.754353" elapsed="0.000235"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.754103" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.754089" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.755197" 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-07-28T01:57:09.754805" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.756044" 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-07-28T01:57:09.755388" elapsed="0.000684"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.756317" elapsed="0.000218"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:09.754058" elapsed="0.002515"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.757076" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.756793" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.756778" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.757924" 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-07-28T01:57:09.757533" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.758784" 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-07-28T01:57:09.758116" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.759010" elapsed="0.000220"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:09.756745" elapsed="0.002533"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.759755" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.759502" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.759487" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.760616" 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-07-28T01:57:09.760197" elapsed="0.000446"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.761519" 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-07-28T01:57:09.760833" elapsed="0.000724"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.761713" elapsed="0.000183"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:09.759440" elapsed="0.002537"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.762581" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.762269" elapsed="0.000540"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.762145" elapsed="0.000689"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.763414" 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-07-28T01:57:09.763019" elapsed="0.000447"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.764294" 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-07-28T01:57:09.763627" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.764508" elapsed="0.000242"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:09.762114" elapsed="0.002686"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.765296" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.764996" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.764981" elapsed="0.000588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.766109" 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-07-28T01:57:09.765712" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.766931" 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-07-28T01:57:09.766292" elapsed="0.000667"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.767152" elapsed="0.000186"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:09.764949" elapsed="0.002426"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.767857" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.767580" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.767566" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.768708" 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-07-28T01:57:09.768293" elapsed="0.000441"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.769603" 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-07-28T01:57:09.768924" 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-07-28T01:57:09.769790" elapsed="0.000233"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:09.767534" elapsed="0.002528"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.770538" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.770243" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.770229" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.771332" 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-07-28T01:57:09.770942" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.772199" 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-07-28T01:57:09.771573" 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-07-28T01:57:09.772383" elapsed="0.000253"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:09.770198" elapsed="0.002487"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.773159" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.772866" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.772851" elapsed="0.000617"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.774016" 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-07-28T01:57:09.773615" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.774834" 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-07-28T01:57:09.774198" 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-07-28T01:57:09.775030" elapsed="0.000220"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:09.772820" elapsed="0.002468"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.775797" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.775492" elapsed="0.000541"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.775475" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.776651" 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-07-28T01:57:09.776235" elapsed="0.000444"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.777509" 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-07-28T01:57:09.776835" elapsed="0.000713"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.777703" elapsed="0.000218"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:09.775421" elapsed="0.002538"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.778387" elapsed="0.000246"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.778150" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.778136" elapsed="0.000560"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.779188" 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-07-28T01:57:09.778839" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.780056" 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-07-28T01:57:09.779415" 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-07-28T01:57:09.780276" elapsed="0.000239"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:09.778105" elapsed="0.002485"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.781196" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.780881" elapsed="0.000625"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.780758" elapsed="0.000787"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.782099" 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-07-28T01:57:09.781694" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.782992" 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-07-28T01:57:09.782282" 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-07-28T01:57:09.783225" elapsed="0.000183"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:09.780727" elapsed="0.002719"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.783919" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.783642" elapsed="0.000546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.783627" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.784776" 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-07-28T01:57:09.784358" elapsed="0.000445"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.785662" 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-07-28T01:57:09.784957" elapsed="0.000736"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.785848" elapsed="0.000194"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:09.783596" elapsed="0.002484"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.786564" elapsed="0.000224"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.786298" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.786284" elapsed="0.000566"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.787459" 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-07-28T01:57:09.787065" elapsed="0.000436"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.788324" 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-07-28T01:57:09.787667" 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-07-28T01:57:09.788555" elapsed="0.000198"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:09.786253" elapsed="0.002538"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.789289" elapsed="0.000241"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.789007" elapsed="0.000563"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.788992" elapsed="0.000602"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.790150" 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-07-28T01:57:09.789749" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.791026" 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-07-28T01:57:09.790367" elapsed="0.000687"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.791245" elapsed="0.000185"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:09.788960" elapsed="0.002534"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.791965" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.791677" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.791662" elapsed="0.000589"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.792826" 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-07-28T01:57:09.792407" elapsed="0.000445"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.793703" 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-07-28T01:57:09.793007" elapsed="0.000724"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.793896" elapsed="0.000222"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:09.791631" elapsed="0.002562"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.794717" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.794388" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.794362" elapsed="0.000647"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.795576" 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-07-28T01:57:09.795151" elapsed="0.000452"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.796430" 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-07-28T01:57:09.795796" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.796680" elapsed="0.000185"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:09.794331" elapsed="0.002572"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.797418" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.797168" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.797153" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.798327" 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-07-28T01:57:09.797924" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.799179" 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-07-28T01:57:09.798527" 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-07-28T01:57:09.799408" elapsed="0.000202"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:09.797121" elapsed="0.002528"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.800489" elapsed="0.000383"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.799989" elapsed="0.000947"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.799866" elapsed="0.001121"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.801624" 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-07-28T01:57:09.801204" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.802531" 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-07-28T01:57:09.801810" elapsed="0.000750"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.802716" elapsed="0.000195"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:09.799797" elapsed="0.003152"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.803407" elapsed="0.000244"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.803164" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.803114" elapsed="0.000602"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.804251" 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-07-28T01:57:09.803861" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.805157" 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-07-28T01:57:09.804431" elapsed="0.000754"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.805342" elapsed="0.000250"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:09.803083" elapsed="0.002547"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.806099" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.805822" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.805796" elapsed="0.000601"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.806965" 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-07-28T01:57:09.806560" elapsed="0.000470"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.807845" 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-07-28T01:57:09.807190" elapsed="0.000715"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.808064" elapsed="0.000235"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:09.805766" elapsed="0.002571"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.808819" elapsed="0.000242"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.808579" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.808564" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.809692" 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-07-28T01:57:09.809269" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.810566" 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-07-28T01:57:09.809873" elapsed="0.000721"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.810794" elapsed="0.000185"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:09.808531" elapsed="0.002486"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.811494" elapsed="0.000228"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.811198" elapsed="0.000564"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.811183" elapsed="0.000604"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.812327" 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-07-28T01:57:09.811931" elapsed="0.000422"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.813227" 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-07-28T01:57:09.812556" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.813409" elapsed="0.000208"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:09.811153" elapsed="0.002502"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.814184" elapsed="0.000240"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.813887" elapsed="0.000591"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.813871" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.815049" 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-07-28T01:57:09.814686" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.815957" 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-07-28T01:57:09.815275" elapsed="0.000711"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.816139" elapsed="0.000231"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:09.813838" elapsed="0.002569"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.816924" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.816642" elapsed="0.000534"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.816627" elapsed="0.000573"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.817827" 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-07-28T01:57:09.817379" elapsed="0.000476"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.818731" 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-07-28T01:57:09.818022" elapsed="0.000737"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.818914" elapsed="0.000230"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:09.816595" elapsed="0.002588"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.819814" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.819564" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.819349" elapsed="0.000759"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.820701" 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-07-28T01:57:09.820274" elapsed="0.000523"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.821633" 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-07-28T01:57:09.820960" elapsed="0.000701"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.821855" elapsed="0.000193"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:09.819319" elapsed="0.002766"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.822640" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.822336" elapsed="0.000539"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.822322" elapsed="0.000578"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.823429" 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-07-28T01:57:09.823077" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.824297" 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-07-28T01:57:09.823673" 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-07-28T01:57:09.824538" elapsed="0.000187"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:09.822290" elapsed="0.002472"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.825291" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.824980" elapsed="0.000595"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.824966" elapsed="0.000635"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.826158" 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-07-28T01:57:09.825758" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.826992" 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-07-28T01:57:09.826340" 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-07-28T01:57:09.827176" elapsed="0.000181"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:09.824934" elapsed="0.002460"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.827891" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.827639" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.827625" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.828720" 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-07-28T01:57:09.828335" elapsed="0.000447"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.829603" 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-07-28T01:57:09.828939" elapsed="0.000692"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.829821" elapsed="0.000194"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:09.827590" elapsed="0.002465"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.830570" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.830316" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.830301" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.831418" 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-07-28T01:57:09.831012" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.832242" 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-07-28T01:57:09.831619" 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-07-28T01:57:09.832426" elapsed="0.000247"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:09.830261" 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-07-28T01:57:09.833227" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.832891" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.832876" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.834052" 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-07-28T01:57:09.833694" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.834964" 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-07-28T01:57:09.834318" 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-07-28T01:57:09.835185" elapsed="0.000196"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:09.832845" elapsed="0.002573"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.835900" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.835649" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.835634" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.836744" 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-07-28T01:57:09.836336" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.837646" 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-07-28T01:57:09.836936" 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-07-28T01:57:09.837831" elapsed="0.000182"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:09.835603" elapsed="0.002491"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.838686" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.838387" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.838263" elapsed="0.000686"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.839516" 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-07-28T01:57:09.839093" elapsed="0.000450"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.840325" 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-07-28T01:57:09.839734" 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-07-28T01:57:09.840570" elapsed="0.000186"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:09.838232" elapsed="0.002561"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.841279" elapsed="0.000247"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.841037" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.841021" elapsed="0.000569"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.842134" 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-07-28T01:57:09.841733" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.842994" 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-07-28T01:57:09.842352" 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-07-28T01:57:09.843213" elapsed="0.000185"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:09.840963" 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-07-28T01:57:09.843924" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.843682" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.843666" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.844781" 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-07-28T01:57:09.844365" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.845681" 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-07-28T01:57:09.844962" elapsed="0.000747"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.845900" elapsed="0.000223"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:09.843600" elapsed="0.002570"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.846653" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.846351" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.846336" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.847508" 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-07-28T01:57:09.847093" elapsed="0.000444"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.848316" 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-07-28T01:57:09.847694" 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-07-28T01:57:09.848565" elapsed="0.000185"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:09.846306" elapsed="0.002517"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.849352" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.849048" elapsed="0.000551"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.849032" elapsed="0.000592"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.850171" 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-07-28T01:57:09.849778" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.851044" 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-07-28T01:57:09.850391" 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-07-28T01:57:09.851263" elapsed="0.000209"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:09.848971" elapsed="0.002540"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.851982" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.851726" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.851677" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.852869" 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-07-28T01:57:09.852446" elapsed="0.000460"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.853786" 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-07-28T01:57:09.853138" 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-07-28T01:57:09.853982" elapsed="0.000221"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:09.851647" elapsed="0.002594"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.854688" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.854421" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.854406" elapsed="0.000576"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.855541" 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-07-28T01:57:09.855125" elapsed="0.000442"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.856426" 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-07-28T01:57:09.855770" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.856636" elapsed="0.000220"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:09.854376" elapsed="0.002519"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.857507" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.857236" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.857073" elapsed="0.000739"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.858359" 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-07-28T01:57:09.857958" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.859265" 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-07-28T01:57:09.858601" 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-07-28T01:57:09.859465" elapsed="0.000231"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:09.857041" elapsed="0.002694"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.860196" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.859915" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.859901" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.861090" 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-07-28T01:57:09.860651" elapsed="0.000466"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.861918" 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-07-28T01:57:09.861272" 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-07-28T01:57:09.862139" elapsed="0.000195"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:09.859870" elapsed="0.002503"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.862852" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.862569" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.862555" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.863656" 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-07-28T01:57:09.863286" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.864915" 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-07-28T01:57:09.863884" elapsed="0.001085"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.865172" elapsed="0.000183"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:09.862523" elapsed="0.002915"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.865877" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.865639" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.865624" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.866737" 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-07-28T01:57:09.866315" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.867626" 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-07-28T01:57:09.866920" elapsed="0.000735"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.867850" elapsed="0.000227"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:09.865593" elapsed="0.002523"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.868596" elapsed="0.000229"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.868307" elapsed="0.000557"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.868293" elapsed="0.000596"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.869464" 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-07-28T01:57:09.869043" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.870366" 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-07-28T01:57:09.869696" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.870566" elapsed="0.000185"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:09.868261" elapsed="0.002574"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.871302" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.871018" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.871003" elapsed="0.000600"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.872191" 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-07-28T01:57:09.871797" elapsed="0.000430"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.873093" 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-07-28T01:57:09.872384" 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-07-28T01:57:09.873293" elapsed="0.000235"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:09.870973" elapsed="0.002595"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.874039" elapsed="0.000230"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.873760" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.873746" elapsed="0.000588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.874899" 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-07-28T01:57:09.874493" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.875802" 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-07-28T01:57:09.875092" 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-07-28T01:57:09.875988" elapsed="0.000182"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:09.873714" elapsed="0.002537"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.877250" elapsed="0.000238"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.876940" elapsed="0.000589"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.876422" elapsed="0.001132"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.878179" 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-07-28T01:57:09.877698" elapsed="0.000507"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.879048" 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-07-28T01:57:09.878361" elapsed="0.000715"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.879232" elapsed="0.000234"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:09.876392" elapsed="0.003113"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.879973" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.879686" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.879672" elapsed="0.000586"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.880816" 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-07-28T01:57:09.880446" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.881704" 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-07-28T01:57:09.881063" 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-07-28T01:57:09.881924" elapsed="0.000195"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:09.879642" elapsed="0.002548"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.882674" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.882375" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.882360" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.883527" 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-07-28T01:57:09.883111" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.884363" 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-07-28T01:57:09.883709" 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-07-28T01:57:09.884604" elapsed="0.000188"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:09.882330" elapsed="0.002532"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.885388" elapsed="0.000249"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.885147" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.885133" elapsed="0.000568"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.886246" 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-07-28T01:57:09.885855" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.887158" 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-07-28T01:57:09.886489" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.887381" elapsed="0.000211"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:09.885099" elapsed="0.002531"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.888129" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.887857" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.887842" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.888945" 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-07-28T01:57:09.888581" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.889867" 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-07-28T01:57:09.889189" elapsed="0.000706"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.890063" elapsed="0.000221"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:09.887802" elapsed="0.002520"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.890810" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.890534" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.890519" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.891652" 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-07-28T01:57:09.891250" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.892532" 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-07-28T01:57:09.891844" elapsed="0.000718"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.892718" elapsed="0.000183"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:09.890486" elapsed="0.002453"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.893440" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.893164" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.893150" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.894199" 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-07-28T01:57:09.893849" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.895068" 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-07-28T01:57:09.894376" elapsed="0.000721"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.895287" elapsed="0.000201"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:09.893118" elapsed="0.002409"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.947219" elapsed="0.000386"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.946669" elapsed="0.001008"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.895741" elapsed="0.051982"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.948580" 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-07-28T01:57:09.947957" elapsed="0.000671"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.949851" 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-07-28T01:57:09.948859" elapsed="0.001127"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.950226" elapsed="0.000301"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:09.895709" elapsed="0.054874"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.951257" elapsed="0.000309"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.950892" elapsed="0.000730"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.950869" elapsed="0.000788"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.952425" 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-07-28T01:57:09.951891" elapsed="0.000595"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.953631" 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-07-28T01:57:09.952717" elapsed="0.000963"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.953916" elapsed="0.000284"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:09.950808" elapsed="0.003447"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.954902" elapsed="0.000282"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.954544" elapsed="0.000695"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.954523" elapsed="0.000750"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.956036" 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-07-28T01:57:09.955502" elapsed="0.000575"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.957263" 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-07-28T01:57:09.956304" elapsed="0.001000"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.957555" elapsed="0.000281"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:09.954474" elapsed="0.003417"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.958413" elapsed="0.000215"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.958168" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.958148" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.959214" 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-07-28T01:57:09.958841" elapsed="0.000448"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.960092" 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-07-28T01:57:09.959479" 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-07-28T01:57:09.960287" elapsed="0.000382"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:09.958100" elapsed="0.002610"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.961176" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.960896" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.960880" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.961978" 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-07-28T01:57:09.961604" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.962783" 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-07-28T01:57:09.962166" 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-07-28T01:57:09.962980" elapsed="0.000190"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:09.960849" 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-07-28T01:57:09.963667" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.963403" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.963389" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.964439" 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-07-28T01:57:09.964077" elapsed="0.000448"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.965478" 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-07-28T01:57:09.964691" elapsed="0.000818"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.965674" elapsed="0.000199"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:09.963354" elapsed="0.002559"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:09.966363" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.966104" elapsed="0.000510"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.966089" elapsed="0.000551"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.967163" 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-07-28T01:57:09.966796" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.967988" 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-07-28T01:57:09.967365" 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-07-28T01:57:09.968180" elapsed="0.000200"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:09.966056" 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-07-28T01:57:09.968881" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.968624" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.968609" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.969717" 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-07-28T01:57:09.969323" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.970538" 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-07-28T01:57:09.969906" 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-07-28T01:57:09.970729" elapsed="0.000200"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:09.968577" 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-07-28T01:57:09.971407" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.971154" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.971140" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.972210" 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-07-28T01:57:09.971835" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.973042" 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-07-28T01:57:09.972394" 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-07-28T01:57:09.973234" elapsed="0.000193"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:09.971108" elapsed="0.002378"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:09.645690" elapsed="0.327828"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.974841" 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-07-28T01:57:09.973682" elapsed="0.001195"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:09.974940" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:57:09.975122" 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-07-28T01:57:09.584602" elapsed="0.390548"/>
</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-07-28T01:57:09.976635" 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-07-28T01:57:09.976328" elapsed="0.000387">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-07-28T01:57:09.976814" 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-07-28T01:57:09.975977" elapsed="0.000863"/>
</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-07-28T01:57:09.977217" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:09.976923" elapsed="0.000354"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.977824" 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-07-28T01:57:09.977524" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.977301" elapsed="0.000593"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.976903" elapsed="0.001018"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.980445" 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-07-28T01:57:09.978080" elapsed="0.002410"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:09.980546" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:09.980713" 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-07-28T01:57:09.975602" elapsed="0.005139"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.982382" 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-07-28T01:57:09.982121" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.982872" 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-07-28T01:57:09.982618" elapsed="0.000686"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.983753" 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-07-28T01:57:09.983480" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.984227" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:09.983964" elapsed="0.000309"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:09.985145" 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-07-28T01:57:09.984939" elapsed="0.000240"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:09.985533" 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-07-28T01:57:09.985338" elapsed="0.000221"/>
</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-07-28T01:57:09.985721" elapsed="0.000201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:09.986347" 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-07-28T01:57:09.986085" elapsed="0.000307"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:09.986440" elapsed="0.000051"/>
</return>
<msg time="2026-07-28T01:57:09.986629" 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-07-28T01:57:09.984493" elapsed="0.002161"/>
</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-07-28T01:57:10.013426" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:10.013815" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:10.014047" 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-07-28T01:57:09.988819" elapsed="0.025288"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:09.986725" elapsed="0.027501"/>
</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-07-28T01:57:10.014669" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.014291" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:09.986708" elapsed="0.028161"/>
</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-07-28T01:57:10.022325" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.017218" elapsed="0.005150"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.016684" elapsed="0.005719"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.016643" elapsed="0.005786"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.025050" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.022724" elapsed="0.002373"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.022500" elapsed="0.002632"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.022482" elapsed="0.002675"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.025753" 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-07-28T01:57:10.025355" elapsed="0.000425"/>
</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-07-28T01:57:10.026103" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.025850" elapsed="0.000310"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.026679" 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-07-28T01:57:10.026359" elapsed="0.000346"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.026185" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.025832" elapsed="0.000931"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.027312" 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-07-28T01:57:10.026936" elapsed="0.000403"/>
</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-07-28T01:57:10.027681" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.027411" elapsed="0.000329"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.028239" 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-07-28T01:57:10.027941" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.027765" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.027392" elapsed="0.000931"/>
</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-07-28T01:57:10.028499" elapsed="0.000363"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:10.029343" 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-07-28T01:57:10.029056" elapsed="0.000314"/>
</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-07-28T01:57:10.029545" elapsed="0.002206"/>
</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-07-28T01:57:10.015675" elapsed="0.016141"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.031998" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:10.031891" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.031872" elapsed="0.000193"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:10.034517" 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-07-28T01:57:10.032217" elapsed="0.002327"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:10.034592" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.034747" 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-07-28T01:57:09.981120" elapsed="0.053652"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.034876" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:10.035030" 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-07-28T01:57:09.491100" elapsed="0.543955"/>
</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-07-28T01:57:10.035395" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.035160" elapsed="0.000318"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.035143" elapsed="0.000359"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.035535" elapsed="0.000026"/>
</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-07-28T01:57:09.485237" elapsed="0.550422"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:09.468100" elapsed="0.567603"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.036339" 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-07-28T01:57:10.035942" elapsed="0.000424"/>
</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-07-28T01:57:10.078277" 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-07-28T01:57:10.077900" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.079050" 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-07-28T01:57:10.078819" elapsed="0.000302">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-07-28T01:57:10.079214" 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-07-28T01:57:10.078484" elapsed="0.000754"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.079808" 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-07-28T01:57:10.079402" elapsed="0.000433"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.080134" 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-07-28T01:57:10.080284" 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-07-28T01:57:10.079994" elapsed="0.000315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.080722" 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-07-28T01:57:10.080478" elapsed="0.000289"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.081749" 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-07-28T01:57:10.081492" elapsed="0.000301"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.082223" 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-07-28T01:57:10.081952" elapsed="0.000303"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.082985" 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-07-28T01:57:10.082636" elapsed="0.000375"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:10.084039" 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-07-28T01:57:10.083591" elapsed="0.000475"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:10.084149" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:10.084307" 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-07-28T01:57:10.083230" elapsed="0.001102"/>
</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-07-28T01:57:10.084508" elapsed="0.000277"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:57:10.082496" elapsed="0.002331"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:10.082308" elapsed="0.002555"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:10.084923" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:10.085092" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:10.081154" elapsed="0.003969"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.080834" elapsed="0.004329"/>
</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-07-28T01:57:10.085358" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.085194" elapsed="0.000220"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.080816" elapsed="0.004619"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.086139" 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-07-28T01:57:10.085595" elapsed="0.000578"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.086234" 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-07-28T01:57:10.077270" elapsed="0.009089"/>
</kw>
<msg time="2026-07-28T01:57:10.086414" 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-07-28T01:57:10.064899" elapsed="0.021586"/>
</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-07-28T01:57:10.098638" 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-07-28T01:57:10.110630" 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-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-07-28T01:57:10.122744" 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-07-28T01:57:10.122944" 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-07-28T01:57:10.123121" 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-07-28T01:57:10.123507" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.123344" elapsed="0.000220"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:10.123329" elapsed="0.000258"/>
</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-07-28T01:57:10.123730" 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-07-28T01:57:10.123936" 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-07-28T01:57:10.124105" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:10.123300" elapsed="0.000858"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.123198" elapsed="0.000986"/>
</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-07-28T01:57:10.124330" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.124404" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:57:10.124540" 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-07-28T01:57:10.060730" elapsed="0.063837"/>
</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-07-28T01:57:10.135191" elapsed="0.000351"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.148483" 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-07-28T01:57:10.148093" elapsed="0.000419"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.149253" 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-07-28T01:57:10.149044" elapsed="0.000272">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-07-28T01:57:10.149409" 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-07-28T01:57:10.148675" elapsed="0.000759"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.150001" 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-07-28T01:57:10.149617" elapsed="0.000411"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.150326" 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-07-28T01:57:10.150464" 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-07-28T01:57:10.150193" elapsed="0.000298"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.150913" 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-07-28T01:57:10.150665" elapsed="0.000294"/>
</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-07-28T01:57:10.151312" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.151026" elapsed="0.000343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.151850" 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-07-28T01:57:10.151556" elapsed="0.000320"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.151394" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.151008" elapsed="0.000924"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.152518" 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-07-28T01:57:10.152078" elapsed="0.000468"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.152595" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.152747" 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-07-28T01:57:10.147479" elapsed="0.005292"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.166007" 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-07-28T01:57:10.165633" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.166751" 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-07-28T01:57:10.166544" elapsed="0.000269">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-07-28T01:57:10.166907" 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-07-28T01:57:10.166198" elapsed="0.000733"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.167493" 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-07-28T01:57:10.167095" elapsed="0.000426"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.167815" 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-07-28T01:57:10.167938" 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-07-28T01:57:10.167682" elapsed="0.000282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.168364" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.168120" 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-07-28T01:57:10.168781" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.168493" elapsed="0.000364"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.169333" 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-07-28T01:57:10.169041" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.168889" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.168473" elapsed="0.000944"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.169999" 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-07-28T01:57:10.169578" elapsed="0.000448"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.170074" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.170227" 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-07-28T01:57:10.164993" elapsed="0.005259"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.183276" 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-07-28T01:57:10.182903" elapsed="0.000401"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.184016" 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-07-28T01:57:10.183814" elapsed="0.000265">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-07-28T01:57:10.184171" 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-07-28T01:57:10.183479" elapsed="0.000716"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.184880" 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-07-28T01:57:10.184390" elapsed="0.000520"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.185211" 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-07-28T01:57:10.185367" 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-07-28T01:57:10.185076" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.185814" 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-07-28T01:57:10.185566" 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-07-28T01:57:10.186217" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.185928" elapsed="0.000348"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.186753" 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-07-28T01:57:10.186445" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.186300" elapsed="0.000515"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.185910" elapsed="0.000926"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.187562" 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-07-28T01:57:10.186982" elapsed="0.000609"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.187640" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.187795" 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-07-28T01:57:10.182351" elapsed="0.005470"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.188224" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:10.187983" elapsed="0.000266"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.188785" 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-07-28T01:57:10.188407" elapsed="0.000404"/>
</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-07-28T01:57:10.189520" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.189266" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.189249" elapsed="0.000353"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.190095" 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-07-28T01:57:10.189745" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.191035" 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-07-28T01:57:10.190275" elapsed="0.000788"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.191220" elapsed="0.000190"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:10.189210" 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-07-28T01:57:10.191888" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.191647" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.191632" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.192653" 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-07-28T01:57:10.192283" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.193423" 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-07-28T01:57:10.192849" 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-07-28T01:57:10.193624" elapsed="0.000186"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:10.191601" 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-07-28T01:57:10.194299" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.194028" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.194013" elapsed="0.000554"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.195065" 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-07-28T01:57:10.194711" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.195836" 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-07-28T01:57:10.195245" 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-07-28T01:57:10.196018" elapsed="0.000183"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:10.193983" 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-07-28T01:57:10.196674" elapsed="0.000213"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.196420" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.196405" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.197445" 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-07-28T01:57:10.197095" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.198215" 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-07-28T01:57:10.197645" 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-07-28T01:57:10.198400" elapsed="0.000198"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:10.196374" 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-07-28T01:57:10.199057" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.198818" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.198803" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.199810" 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-07-28T01:57:10.199443" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.200579" 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-07-28T01:57:10.199990" 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-07-28T01:57:10.200761" elapsed="0.000194"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:10.198772" 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-07-28T01:57:10.201420" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.201181" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.201160" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.202173" 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-07-28T01:57:10.201824" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.202938" 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-07-28T01:57:10.202353" 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-07-28T01:57:10.203119" elapsed="0.000181"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:10.201129" 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-07-28T01:57:10.203773" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.203536" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.203521" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.204525" 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-07-28T01:57:10.204159" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.205293" 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-07-28T01:57:10.204707" 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-07-28T01:57:10.205525" elapsed="0.000187"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:10.203489" 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-07-28T01:57:10.206176" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.205933" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.205918" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.206934" 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-07-28T01:57:10.206582" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.207828" 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-07-28T01:57:10.207115" elapsed="0.000741"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.208014" elapsed="0.000181"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:10.205887" 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-07-28T01:57:10.208667" elapsed="0.000209"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.208413" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.208398" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.209440" 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-07-28T01:57:10.209087" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.210207" 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-07-28T01:57:10.209638" 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-07-28T01:57:10.210392" elapsed="0.000199"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:10.208368" 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-07-28T01:57:10.211046" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.210809" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.210794" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.211807" 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-07-28T01:57:10.211434" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.212575" 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-07-28T01:57:10.211988" 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-07-28T01:57:10.212767" elapsed="0.000202"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:10.210764" 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-07-28T01:57:10.213441" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.213201" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.213186" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.214196" 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-07-28T01:57:10.213845" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.214965" 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-07-28T01:57:10.214377" 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-07-28T01:57:10.215150" elapsed="0.000183"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:10.213155" 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-07-28T01:57:10.215804" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.215567" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.215552" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.216557" 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-07-28T01:57:10.216192" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.217379" 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-07-28T01:57:10.216772" 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-07-28T01:57:10.217581" elapsed="0.000185"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:10.215519" 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-07-28T01:57:10.218233" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.217993" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.217979" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.219013" 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-07-28T01:57:10.218650" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.219783" 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-07-28T01:57:10.219194" 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-07-28T01:57:10.219967" elapsed="0.000182"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:10.217945" 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-07-28T01:57:10.220618" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.220365" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.220351" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.221409" 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-07-28T01:57:10.221057" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.222186" 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-07-28T01:57:10.221607" 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-07-28T01:57:10.222369" elapsed="0.000201"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:10.220320" 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-07-28T01:57:10.223028" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.222789" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.222773" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.223901" 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-07-28T01:57:10.223416" elapsed="0.000511"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.224693" 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-07-28T01:57:10.224083" 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-07-28T01:57:10.224905" elapsed="0.000187"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:10.222742" 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-07-28T01:57:10.225579" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.225313" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.225298" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.226347" 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-07-28T01:57:10.225988" elapsed="0.000386"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.227132" 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-07-28T01:57:10.226546" 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-07-28T01:57:10.227319" elapsed="0.000206"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:10.225267" 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-07-28T01:57:10.227992" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.227748" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.227733" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.228842" 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-07-28T01:57:10.228435" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.229633" 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-07-28T01:57:10.229030" 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-07-28T01:57:10.229820" elapsed="0.000188"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:10.227702" elapsed="0.002344"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.230485" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.230229" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.230214" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.231240" 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-07-28T01:57:10.230883" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.232022" 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-07-28T01:57:10.231424" 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-07-28T01:57:10.232210" elapsed="0.000184"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:10.230183" 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-07-28T01:57:10.232916" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.232633" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.232618" elapsed="0.000553"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.233692" 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-07-28T01:57:10.233317" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.234468" 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-07-28T01:57:10.233876" 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-07-28T01:57:10.234667" elapsed="0.000187"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:10.232586" 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-07-28T01:57:10.235318" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.235073" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.235057" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.236088" 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-07-28T01:57:10.235731" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.236894" 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-07-28T01:57:10.236270" 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-07-28T01:57:10.237082" elapsed="0.000201"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:10.235026" 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-07-28T01:57:10.237780" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.237537" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.237522" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.238548" 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-07-28T01:57:10.238176" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.239315" 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-07-28T01:57:10.238731" 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-07-28T01:57:10.239516" elapsed="0.000189"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:10.237478" 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-07-28T01:57:10.240207" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.239965" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.239950" elapsed="0.000645"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.241123" 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-07-28T01:57:10.240740" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.241918" 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-07-28T01:57:10.241313" 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-07-28T01:57:10.242106" elapsed="0.000186"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:10.239918" elapsed="0.002412"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.242787" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.242534" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.242515" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.243557" 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-07-28T01:57:10.243182" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.244326" 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-07-28T01:57:10.243741" 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-07-28T01:57:10.244533" elapsed="0.000193"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:10.242481" 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-07-28T01:57:10.245239" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.244996" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.244981" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.246012" 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-07-28T01:57:10.245656" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.246790" 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-07-28T01:57:10.246194" 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-07-28T01:57:10.246975" elapsed="0.000185"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:10.244948" 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-07-28T01:57:10.247635" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.247379" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.247364" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.248407" 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-07-28T01:57:10.248028" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.249437" 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-07-28T01:57:10.248766" elapsed="0.000716"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.249643" elapsed="0.000186"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:10.247333" elapsed="0.002534"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.250294" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.250050" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.250035" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.251066" 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-07-28T01:57:10.250710" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.251842" 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-07-28T01:57:10.251249" 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-07-28T01:57:10.252064" elapsed="0.000185"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:10.250003" 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-07-28T01:57:10.252733" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.252488" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.252471" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.253529" 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-07-28T01:57:10.253154" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.254294" 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-07-28T01:57:10.253713" 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-07-28T01:57:10.254496" elapsed="0.000188"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:10.252424" 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-07-28T01:57:10.255148" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.254907" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.254892" elapsed="0.000505"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.255918" 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-07-28T01:57:10.255560" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.256700" 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-07-28T01:57:10.256104" 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-07-28T01:57:10.256927" elapsed="0.000189"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:10.254861" 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-07-28T01:57:10.257712" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.257340" elapsed="0.000600"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.257325" elapsed="0.000639"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.258479" 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-07-28T01:57:10.258108" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.259257" 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-07-28T01:57:10.258663" 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-07-28T01:57:10.259465" elapsed="0.000190"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:10.257293" 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-07-28T01:57:10.260118" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.259875" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.259859" elapsed="0.000507"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.260912" 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-07-28T01:57:10.260528" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.261695" 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-07-28T01:57:10.261097" 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-07-28T01:57:10.261881" elapsed="0.000186"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:10.259828" 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-07-28T01:57:10.262544" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.262288" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.262273" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.263293" 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-07-28T01:57:10.262938" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.264138" 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-07-28T01:57:10.263536" 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-07-28T01:57:10.264323" elapsed="0.000200"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:10.262243" 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-07-28T01:57:10.265012" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.264744" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.264730" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.265804" 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-07-28T01:57:10.265408" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.266589" 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-07-28T01:57:10.265991" 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-07-28T01:57:10.266776" elapsed="0.000184"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:10.264698" 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-07-28T01:57:10.267424" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.267182" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.267167" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.268196" 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-07-28T01:57:10.267840" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.269013" 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-07-28T01:57:10.268378" 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-07-28T01:57:10.269201" elapsed="0.000186"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:10.267135" 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-07-28T01:57:10.269876" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.269628" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.269613" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.270645" 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-07-28T01:57:10.270269" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.271412" 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-07-28T01:57:10.270828" 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-07-28T01:57:10.271615" elapsed="0.000186"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:10.269582" 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-07-28T01:57:10.272262" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.272023" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.272008" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.273050" 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-07-28T01:57:10.272674" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.273833" 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-07-28T01:57:10.273237" 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-07-28T01:57:10.274018" elapsed="0.000184"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:10.271977" 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-07-28T01:57:10.275374" elapsed="0.000214"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.275079" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.274407" elapsed="0.001248"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.276168" 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-07-28T01:57:10.275804" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.277014" 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-07-28T01:57:10.276353" elapsed="0.000691"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.277204" elapsed="0.000189"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:10.274376" elapsed="0.003056"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.277881" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.277640" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.277626" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.278665" 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-07-28T01:57:10.278288" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.279447" 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-07-28T01:57:10.278857" 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-07-28T01:57:10.279652" elapsed="0.000185"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:10.277594" 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-07-28T01:57:10.280299" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.280059" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.280044" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.281107" 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-07-28T01:57:10.280708" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.281901" 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-07-28T01:57:10.281290" 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-07-28T01:57:10.282089" elapsed="0.000189"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:10.280013" 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-07-28T01:57:10.282760" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.282518" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.282502" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.283524" 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-07-28T01:57:10.283154" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.284287" 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-07-28T01:57:10.283709" 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-07-28T01:57:10.284487" elapsed="0.000186"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:10.282469" 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-07-28T01:57:10.285161" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.284920" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.284906" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.285918" 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-07-28T01:57:10.285566" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.286691" 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-07-28T01:57:10.286099" 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-07-28T01:57:10.286909" elapsed="0.000184"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:10.284871" 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-07-28T01:57:10.287589" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.287321" elapsed="0.000495"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.287306" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.288335" 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-07-28T01:57:10.287983" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.289152" 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-07-28T01:57:10.288531" 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-07-28T01:57:10.289338" elapsed="0.000200"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:10.287274" 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-07-28T01:57:10.289996" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.289758" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.289744" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.290765" 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-07-28T01:57:10.290387" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.291576" 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-07-28T01:57:10.290947" 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-07-28T01:57:10.291760" elapsed="0.000183"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:10.289713" 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-07-28T01:57:10.292539" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.292279" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.292150" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.293315" 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-07-28T01:57:10.292962" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.294090" 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-07-28T01:57:10.293512" 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-07-28T01:57:10.294281" elapsed="0.000210"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:10.292119" elapsed="0.002412"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.294969" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.294728" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.294713" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.295734" 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-07-28T01:57:10.295362" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.296505" 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-07-28T01:57:10.295916" 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-07-28T01:57:10.296689" elapsed="0.000205"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:10.294682" 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-07-28T01:57:10.297351" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.297113" elapsed="0.000483"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.297099" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.298134" 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-07-28T01:57:10.297769" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.298951" 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-07-28T01:57:10.298353" 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-07-28T01:57:10.299136" elapsed="0.000183"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:10.297068" 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-07-28T01:57:10.299793" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.299556" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.299541" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.300550" 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-07-28T01:57:10.300181" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.301345" 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-07-28T01:57:10.300741" 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-07-28T01:57:10.301547" elapsed="0.000186"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:10.299510" 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-07-28T01:57:10.302191" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.301953" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.301939" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.302962" 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-07-28T01:57:10.302600" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.303734" 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-07-28T01:57:10.303144" 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-07-28T01:57:10.303918" elapsed="0.000182"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:10.301908" 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-07-28T01:57:10.304573" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.304318" elapsed="0.000509"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.304303" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.305359" 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-07-28T01:57:10.305004" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.306136" 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-07-28T01:57:10.305563" 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-07-28T01:57:10.306327" elapsed="0.000199"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:10.304272" 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-07-28T01:57:10.306988" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.306745" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.306731" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.307745" 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-07-28T01:57:10.307376" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.308536" 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-07-28T01:57:10.307925" 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-07-28T01:57:10.308720" elapsed="0.000202"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:10.306700" 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-07-28T01:57:10.309517" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.309255" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.309124" elapsed="0.000680"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.310326" 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-07-28T01:57:10.309952" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.311121" 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-07-28T01:57:10.310538" 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-07-28T01:57:10.311307" elapsed="0.000204"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:10.309094" 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-07-28T01:57:10.311974" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.311733" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.311718" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.312890" 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-07-28T01:57:10.312405" elapsed="0.000512"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.313670" 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-07-28T01:57:10.313075" 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-07-28T01:57:10.313855" elapsed="0.000183"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:10.311687" 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-07-28T01:57:10.314509" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.314255" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.314241" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.315262" 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-07-28T01:57:10.314903" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.316031" 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-07-28T01:57:10.315443" 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-07-28T01:57:10.316214" elapsed="0.000180"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:10.314211" 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-07-28T01:57:10.316884" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.316628" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.316614" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.317638" 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-07-28T01:57:10.317273" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.318393" 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-07-28T01:57:10.317817" 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-07-28T01:57:10.318592" elapsed="0.000189"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:10.316582" 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-07-28T01:57:10.319231" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.318995" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.318981" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.319986" 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-07-28T01:57:10.319637" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.320752" 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-07-28T01:57:10.320166" 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-07-28T01:57:10.320951" elapsed="0.000182"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:10.318951" 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-07-28T01:57:10.321649" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.321393" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.321377" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.322397" 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-07-28T01:57:10.322046" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.323164" 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-07-28T01:57:10.322594" 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-07-28T01:57:10.323348" elapsed="0.000197"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:10.321346" 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-07-28T01:57:10.323998" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.323761" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.323747" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.324819" 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-07-28T01:57:10.324395" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.325620" 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-07-28T01:57:10.325002" 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-07-28T01:57:10.325804" elapsed="0.000183"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:10.323716" 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-07-28T01:57:10.326578" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.326318" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.326190" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.327320" 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-07-28T01:57:10.326970" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.328090" 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-07-28T01:57:10.327517" 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-07-28T01:57:10.328273" elapsed="0.000198"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:10.326159" 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-07-28T01:57:10.328949" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.328691" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.328676" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.329749" 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-07-28T01:57:10.329357" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.330557" 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-07-28T01:57:10.329932" 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-07-28T01:57:10.330757" elapsed="0.000183"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:10.328644" 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-07-28T01:57:10.331397" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.331158" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.331144" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.332158" 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-07-28T01:57:10.331805" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.332954" 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-07-28T01:57:10.332337" 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-07-28T01:57:10.333181" elapsed="0.000184"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:10.331113" 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-07-28T01:57:10.333839" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.333601" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.333587" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.334594" 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-07-28T01:57:10.334226" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.335360" 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-07-28T01:57:10.334778" 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-07-28T01:57:10.335568" elapsed="0.000214"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:10.333555" 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-07-28T01:57:10.336252" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.336008" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.335994" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.337043" 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-07-28T01:57:10.336657" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.337817" 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-07-28T01:57:10.337224" 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-07-28T01:57:10.337998" elapsed="0.000182"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:10.335963" 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-07-28T01:57:10.338652" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.338399" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.338384" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.339396" 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-07-28T01:57:10.339049" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.340183" 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-07-28T01:57:10.339592" 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-07-28T01:57:10.340365" elapsed="0.000234"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:10.338353" 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-07-28T01:57:10.341096" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.340849" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.340834" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.341868" 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-07-28T01:57:10.341500" elapsed="0.000405"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.342704" 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-07-28T01:57:10.342060" 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-07-28T01:57:10.342889" elapsed="0.000186"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:10.340801" 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-07-28T01:57:10.343675" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.343406" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.343279" elapsed="0.000647"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.344444" 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-07-28T01:57:10.344083" elapsed="0.000438"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.345304" 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-07-28T01:57:10.344687" 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-07-28T01:57:10.345511" elapsed="0.000192"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:10.343248" elapsed="0.002493"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.346190" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.345927" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.345908" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.346961" 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-07-28T01:57:10.346604" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.347740" 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-07-28T01:57:10.347142" 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-07-28T01:57:10.347925" elapsed="0.000186"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:10.345877" 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-07-28T01:57:10.348721" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.348332" elapsed="0.000654"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.348318" elapsed="0.000694"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.349535" 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-07-28T01:57:10.349159" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.350296" 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-07-28T01:57:10.349716" 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-07-28T01:57:10.350497" elapsed="0.000187"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:10.348287" elapsed="0.002435"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.351145" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.350904" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.350890" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.351913" 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-07-28T01:57:10.351557" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.352704" 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-07-28T01:57:10.352107" 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-07-28T01:57:10.352918" elapsed="0.000189"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:10.350858" 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-07-28T01:57:10.353624" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.353355" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.353339" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.354385" 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-07-28T01:57:10.354019" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.355164" 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-07-28T01:57:10.354586" 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-07-28T01:57:10.355349" elapsed="0.000207"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:10.353306" 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-07-28T01:57:10.356054" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.355777" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.355762" elapsed="0.000545"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.356855" 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-07-28T01:57:10.356467" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.357640" 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-07-28T01:57:10.357040" 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-07-28T01:57:10.357827" elapsed="0.000187"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:10.355731" elapsed="0.002322"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.358497" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.358239" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.358224" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.359253" 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-07-28T01:57:10.358897" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.360035" 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-07-28T01:57:10.359439" 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-07-28T01:57:10.360223" elapsed="0.000184"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:10.358192" 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-07-28T01:57:10.361091" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.360821" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.360632" elapsed="0.000714"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.361865" 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-07-28T01:57:10.361508" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.362652" 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-07-28T01:57:10.362048" 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-07-28T01:57:10.362840" elapsed="0.000188"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:10.360601" elapsed="0.002465"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.363505" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.363249" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.363234" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.364247" 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-07-28T01:57:10.363898" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.365038" 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-07-28T01:57:10.364427" 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-07-28T01:57:10.365220" elapsed="0.000181"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:10.363203" 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-07-28T01:57:10.365874" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.365638" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.365623" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.366622" 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-07-28T01:57:10.366259" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.367405" 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-07-28T01:57:10.366807" 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-07-28T01:57:10.367645" elapsed="0.000187"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:10.365592" 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-07-28T01:57:10.368288" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.368051" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.368036" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.369077" 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-07-28T01:57:10.368692" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.369847" 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-07-28T01:57:10.369258" 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-07-28T01:57:10.370031" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:10.368006" 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-07-28T01:57:10.370685" elapsed="0.000237"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.370431" elapsed="0.000539"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.370416" elapsed="0.000579"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.371507" 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-07-28T01:57:10.371140" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.372275" 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-07-28T01:57:10.371689" 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-07-28T01:57:10.372472" elapsed="0.000184"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:10.370385" 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-07-28T01:57:10.373157" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.372918" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.372903" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.373929" 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-07-28T01:57:10.373577" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.374721" 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-07-28T01:57:10.374116" 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-07-28T01:57:10.374905" elapsed="0.000181"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:10.372872" 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-07-28T01:57:10.375556" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.375305" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.375289" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.376602" 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-07-28T01:57:10.375950" elapsed="0.000682"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.377423" 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-07-28T01:57:10.376833" 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-07-28T01:57:10.377625" elapsed="0.000182"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:10.375258" elapsed="0.002586"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.378377" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.378134" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.378009" elapsed="0.000639"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.379141" 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-07-28T01:57:10.378792" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.379960" 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-07-28T01:57:10.379364" 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-07-28T01:57:10.380144" elapsed="0.000183"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:10.377978" 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-07-28T01:57:10.380830" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.380563" elapsed="0.000492"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.380548" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.381590" 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-07-28T01:57:10.381223" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.382349" 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-07-28T01:57:10.381771" 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-07-28T01:57:10.382548" elapsed="0.000183"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:10.380517" 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-07-28T01:57:10.383184" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.382947" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.382933" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.383934" 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-07-28T01:57:10.383584" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.384695" 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-07-28T01:57:10.384112" 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-07-28T01:57:10.384915" elapsed="0.000184"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:10.382903" 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-07-28T01:57:10.385568" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.385315" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.385301" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.386316" 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-07-28T01:57:10.385957" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.387086" 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-07-28T01:57:10.386512" 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-07-28T01:57:10.387267" elapsed="0.000183"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:10.385271" 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-07-28T01:57:10.387925" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.387688" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.387671" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.388728" 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-07-28T01:57:10.388318" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.389541" 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-07-28T01:57:10.388943" 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-07-28T01:57:10.389725" elapsed="0.000184"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:10.387641" 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-07-28T01:57:10.390373" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.390134" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.390116" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.391186" 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-07-28T01:57:10.390822" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.391960" 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-07-28T01:57:10.391368" 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-07-28T01:57:10.392143" elapsed="0.000185"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:10.390084" 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-07-28T01:57:10.392830" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.392563" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.392548" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.393599" 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-07-28T01:57:10.393229" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.394355" 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-07-28T01:57:10.393781" 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-07-28T01:57:10.394554" elapsed="0.000186"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:10.392517" 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-07-28T01:57:10.395326" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.395079" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.394953" elapsed="0.000642"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.396092" 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-07-28T01:57:10.395740" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.396895" 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-07-28T01:57:10.396275" 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-07-28T01:57:10.397081" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:10.394922" 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-07-28T01:57:10.397745" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.397499" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.397483" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.398503" 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-07-28T01:57:10.398140" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.399256" 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-07-28T01:57:10.398684" 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-07-28T01:57:10.399438" elapsed="0.000197"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:10.397437" 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-07-28T01:57:10.400089" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.399853" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.399838" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.400873" 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-07-28T01:57:10.400494" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.401646" 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-07-28T01:57:10.401056" 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-07-28T01:57:10.401829" elapsed="0.000181"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:10.399808" 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-07-28T01:57:10.402519" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.402264" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.402250" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.403265" 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-07-28T01:57:10.402914" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.404033" 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-07-28T01:57:10.403446" 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-07-28T01:57:10.404219" elapsed="0.000180"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:10.402218" 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-07-28T01:57:10.404891" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.404633" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.404619" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.405648" 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-07-28T01:57:10.405283" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.406410" 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-07-28T01:57:10.405831" 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-07-28T01:57:10.406609" elapsed="0.000192"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:10.404588" 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-07-28T01:57:10.407257" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.407018" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.407002" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.408011" 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-07-28T01:57:10.407663" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.408820" 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-07-28T01:57:10.408192" 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-07-28T01:57:10.409019" elapsed="0.000183"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:10.406972" 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-07-28T01:57:10.409682" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.409421" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.409405" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.410420" 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-07-28T01:57:10.410074" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.411197" 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-07-28T01:57:10.410618" 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-07-28T01:57:10.411384" elapsed="0.000196"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:10.409374" 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-07-28T01:57:10.412161" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.411912" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.411783" elapsed="0.000628"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.412941" 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-07-28T01:57:10.412572" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.413721" 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-07-28T01:57:10.413124" 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-07-28T01:57:10.413945" elapsed="0.000188"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:10.411752" 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-07-28T01:57:10.414606" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.414351" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.414337" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.415346" 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-07-28T01:57:10.414996" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.416119" 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-07-28T01:57:10.415543" 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-07-28T01:57:10.416304" elapsed="0.000199"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:10.414306" 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-07-28T01:57:10.417025" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.416734" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.416706" elapsed="0.000572"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.417790" 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-07-28T01:57:10.417421" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.418563" 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-07-28T01:57:10.417971" 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-07-28T01:57:10.418746" elapsed="0.000182"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:10.416676" 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-07-28T01:57:10.419385" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.419146" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.419131" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.420150" 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-07-28T01:57:10.419794" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.420987" 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-07-28T01:57:10.420331" elapsed="0.000684"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.421171" elapsed="0.000181"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:10.419100" 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-07-28T01:57:10.421826" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.421589" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.421575" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.422575" 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-07-28T01:57:10.422212" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.423321" 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-07-28T01:57:10.422755" 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-07-28T01:57:10.423517" elapsed="0.000183"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:10.421544" 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-07-28T01:57:10.424153" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.423917" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.423902" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.424924" 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-07-28T01:57:10.424554" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.425732" 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-07-28T01:57:10.425142" 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-07-28T01:57:10.425916" elapsed="0.000183"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:10.423872" 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-07-28T01:57:10.426574" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.426319" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.426303" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.427321" 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-07-28T01:57:10.426968" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.428102" 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-07-28T01:57:10.427521" 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-07-28T01:57:10.428288" elapsed="0.000197"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:10.426273" 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-07-28T01:57:10.429087" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.428840" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.428692" elapsed="0.000645"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.429847" 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-07-28T01:57:10.429497" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.430622" 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-07-28T01:57:10.430029" 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-07-28T01:57:10.430809" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:10.428661" 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-07-28T01:57:10.431468" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.431211" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.431196" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.432210" 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-07-28T01:57:10.431860" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.433017" 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-07-28T01:57:10.432389" 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-07-28T01:57:10.433210" elapsed="0.000181"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:10.431166" elapsed="0.002263"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:10.188894" elapsed="0.244581"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.434783" 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-07-28T01:57:10.433635" elapsed="0.001176"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.434871" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:57:10.435075" 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-07-28T01:57:10.134321" elapsed="0.300782"/>
</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-07-28T01:57:10.436501" 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-07-28T01:57:10.436225" elapsed="0.000351">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-07-28T01:57:10.436670" 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-07-28T01:57:10.435878" elapsed="0.000817"/>
</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-07-28T01:57:10.437032" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.436784" elapsed="0.000305"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.437621" 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-07-28T01:57:10.437310" elapsed="0.000337"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.437114" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.436766" elapsed="0.000938"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.440115" 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-07-28T01:57:10.437857" elapsed="0.002285"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:10.440193" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.440810" 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-07-28T01:57:10.435525" elapsed="0.005310"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.442368" 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-07-28T01:57:10.442110" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.442824" 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-07-28T01:57:10.442585" elapsed="0.000651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.443668" 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-07-28T01:57:10.443391" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.444102" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.443863" elapsed="0.000282"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:10.445002" 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-07-28T01:57:10.444799" elapsed="0.000229"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:10.445352" 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-07-28T01:57:10.445180" elapsed="0.000197"/>
</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-07-28T01:57:10.445540" elapsed="0.000191"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.446171" 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-07-28T01:57:10.445885" elapsed="0.000330"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:10.446264" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.446422" 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-07-28T01:57:10.444345" elapsed="0.002101"/>
</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-07-28T01:57:10.471726" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:10.471881" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:group=88', 'Content-Length': '0'} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:10.471988" 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-07-28T01:57:10.448755" elapsed="0.023260"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.446689" elapsed="0.025373"/>
</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-07-28T01:57:10.472243" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.472089" elapsed="0.000222"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.446516" elapsed="0.025817"/>
</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-07-28T01:57:10.475678" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.473399" elapsed="0.002323"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.473167" elapsed="0.002589"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.473148" elapsed="0.002634"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.478303" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.476062" elapsed="0.002287"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.475838" elapsed="0.002546"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.475822" elapsed="0.002586"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.478978" 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-07-28T01:57:10.478603" elapsed="0.000403"/>
</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-07-28T01:57:10.479326" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.479076" elapsed="0.000307"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.479893" 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-07-28T01:57:10.479596" elapsed="0.000324"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.479407" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.479058" elapsed="0.000918"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.480522" 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-07-28T01:57:10.480148" elapsed="0.000401"/>
</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-07-28T01:57:10.480898" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.480618" elapsed="0.000338"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.481466" 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-07-28T01:57:10.481153" elapsed="0.000340"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.480980" elapsed="0.000548"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.480600" elapsed="0.000950"/>
</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-07-28T01:57:10.481703" elapsed="0.000377"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:10.482540" 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-07-28T01:57:10.482247" elapsed="0.000320"/>
</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-07-28T01:57:10.482722" 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-07-28T01:57:10.472726" elapsed="0.012262"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.485167" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:10.485061" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.485042" elapsed="0.000192"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:10.487684" 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-07-28T01:57:10.485382" elapsed="0.002329"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:10.487759" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.487915" 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-07-28T01:57:10.441161" elapsed="0.046779"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.488048" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:10.488204" 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-07-28T01:57:10.049873" elapsed="0.438356"/>
</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-07-28T01:57:10.488588" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.488335" elapsed="0.000322"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.488317" elapsed="0.000363"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.488731" elapsed="0.000026"/>
</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-07-28T01:57:10.047316" elapsed="0.441539"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:10.035799" elapsed="0.453101"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:08.950230" elapsed="1.538704"/>
</for>
<doc>Add 100 groups of type 2 in every switch.</doc>
<status status="PASS" start="2026-07-28T01:57:08.949803" elapsed="1.539254"/>
</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-07-28T01:57:10.492562" 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-07-28T01:57:10.492142" elapsed="0.000448"/>
</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-07-28T01:57:10.534893" 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-07-28T01:57:10.534516" elapsed="0.000405"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.535672" 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-07-28T01:57:10.535417" elapsed="0.000325">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-07-28T01:57:10.535835" 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-07-28T01:57:10.535083" elapsed="0.000776"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.536405" 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-07-28T01:57:10.536023" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.536774" 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-07-28T01:57:10.536925" 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-07-28T01:57:10.536608" elapsed="0.000342"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.537348" 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-07-28T01:57:10.537107" elapsed="0.000286"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.538352" 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-07-28T01:57:10.538095" elapsed="0.000302"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.538840" 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-07-28T01:57:10.538575" elapsed="0.000291"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.539634" 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-07-28T01:57:10.539265" elapsed="0.000395"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:10.540739" 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-07-28T01:57:10.540239" elapsed="0.000527"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:10.540817" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.540972" 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-07-28T01:57:10.539888" elapsed="0.001108"/>
</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-07-28T01:57:10.541147" elapsed="0.000274"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:1</var>
<status status="PASS" start="2026-07-28T01:57:10.539127" elapsed="0.002354"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:10.538916" elapsed="0.002602"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:10.541561" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.541719" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A1'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:10.537771" elapsed="0.003973"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.537474" elapsed="0.004302"/>
</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-07-28T01:57:10.541951" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.541801" elapsed="0.000207"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.537441" elapsed="0.004588"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.542720" 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-07-28T01:57:10.542171" elapsed="0.000577"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.542796" 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-07-28T01:57:10.533884" elapsed="0.009036"/>
</kw>
<msg time="2026-07-28T01:57:10.542974" 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-07-28T01:57:10.521662" elapsed="0.021360"/>
</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-07-28T01:57:10.555899" 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/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-07-28T01:57:10.567988" 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-07-28T01:57:10.580620" elapsed="0.000041"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:10.580832" 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-07-28T01:57:10.581008" 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-07-28T01:57:10.581376" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.581229" elapsed="0.000255"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:10.581214" elapsed="0.000296"/>
</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-07-28T01:57:10.581656" elapsed="0.000022"/>
</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-07-28T01:57:10.581826" 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-07-28T01:57:10.581993" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:10.581186" elapsed="0.000861"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.581084" elapsed="0.000990"/>
</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-07-28T01:57:10.582258" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.582336" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:57:10.582469" 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-07-28T01:57:10.517465" elapsed="0.065054"/>
</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-07-28T01:57:10.593237" elapsed="0.000353"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.606579" 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-07-28T01:57:10.606180" elapsed="0.000428"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.607316" 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-07-28T01:57:10.607108" elapsed="0.000271">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-07-28T01:57:10.607488" 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-07-28T01:57:10.606773" elapsed="0.000741"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.608066" 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-07-28T01:57:10.607682" elapsed="0.000411"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.608389" 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-07-28T01:57:10.608533" 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-07-28T01:57:10.608254" elapsed="0.000304"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.608994" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.608741" elapsed="0.000297"/>
</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-07-28T01:57:10.609403" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.609107" elapsed="0.000368"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.609942" 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-07-28T01:57:10.609649" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.609501" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.609089" elapsed="0.000936"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.610615" 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-07-28T01:57:10.610172" elapsed="0.000470"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.610691" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.610844" 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-07-28T01:57:10.605561" elapsed="0.005307"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.624330" 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-07-28T01:57:10.623954" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.625098" 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-07-28T01:57:10.624894" elapsed="0.000267">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-07-28T01:57:10.625253" 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-07-28T01:57:10.624538" elapsed="0.000739"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.625879" 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-07-28T01:57:10.625493" elapsed="0.000413"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.626201" 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-07-28T01:57:10.626329" 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-07-28T01:57:10.626068" elapsed="0.000286"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.626771" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.626527" elapsed="0.000287"/>
</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-07-28T01:57:10.627166" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.626880" elapsed="0.000343"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.627802" 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-07-28T01:57:10.627445" elapsed="0.000383"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.627247" elapsed="0.000618"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.626862" elapsed="0.001025"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.628476" 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-07-28T01:57:10.628034" elapsed="0.000470"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.628553" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.628720" 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-07-28T01:57:10.623321" elapsed="0.005424"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.642315" 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-07-28T01:57:10.641940" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.643152" 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-07-28T01:57:10.642944" elapsed="0.000270">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-07-28T01:57:10.643308" 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-07-28T01:57:10.642601" elapsed="0.000731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.643941" 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-07-28T01:57:10.643553" elapsed="0.000415"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:10.644269" 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-07-28T01:57:10.644398" 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-07-28T01:57:10.644133" elapsed="0.000292"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.644868" 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-07-28T01:57:10.644597" elapsed="0.000320"/>
</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-07-28T01:57:10.645274" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.644985" elapsed="0.000346"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.645813" 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-07-28T01:57:10.645518" elapsed="0.000321"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.645355" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.644966" elapsed="0.000932"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.646657" 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-07-28T01:57:10.646044" elapsed="0.000641"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.646735" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.646891" 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-07-28T01:57:10.641381" elapsed="0.005537"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.647324" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:10.647082" elapsed="0.000268"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.647892" 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-07-28T01:57:10.647526" elapsed="0.000392"/>
</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-07-28T01:57:10.648545" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.648293" elapsed="0.000312"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.648279" elapsed="0.000367"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.649143" 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-07-28T01:57:10.648792" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.650123" 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-07-28T01:57:10.649324" 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-07-28T01:57:10.650312" elapsed="0.000209"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:10.648248" 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-07-28T01:57:10.650985" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.650743" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.650728" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.651757" 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-07-28T01:57:10.651381" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.652603" 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-07-28T01:57:10.651979" 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-07-28T01:57:10.652805" elapsed="0.000186"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:10.650695" 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-07-28T01:57:10.653449" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.653210" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.653195" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.654238" 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-07-28T01:57:10.653881" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.655038" 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-07-28T01:57:10.654420" 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-07-28T01:57:10.655222" elapsed="0.000182"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:10.653164" 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-07-28T01:57:10.655880" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.655639" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.655625" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.656667" 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-07-28T01:57:10.656271" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.657473" 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-07-28T01:57:10.656856" 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-07-28T01:57:10.657659" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:10.655593" 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-07-28T01:57:10.658299" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.658059" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.658044" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.659061" 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-07-28T01:57:10.658709" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.659866" 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-07-28T01:57:10.659243" 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-07-28T01:57:10.660052" elapsed="0.000183"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:10.658013" 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-07-28T01:57:10.660724" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.660467" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.660438" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.661483" 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-07-28T01:57:10.661115" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.662269" 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-07-28T01:57:10.661665" 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-07-28T01:57:10.662467" elapsed="0.000185"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:10.660407" 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-07-28T01:57:10.663149" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.662871" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.662856" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.663919" 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-07-28T01:57:10.663563" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.664733" 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-07-28T01:57:10.664102" 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-07-28T01:57:10.664920" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:10.662825" elapsed="0.002315"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.665575" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.665320" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.665306" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.666322" 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-07-28T01:57:10.665970" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.667255" 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-07-28T01:57:10.666520" elapsed="0.000763"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.667441" elapsed="0.000202"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:10.665275" 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-07-28T01:57:10.668101" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.667862" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.667848" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.668894" 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-07-28T01:57:10.668510" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.669703" 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-07-28T01:57:10.669077" 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-07-28T01:57:10.669929" elapsed="0.000187"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:10.667816" elapsed="0.002338"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.670593" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.670337" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.670322" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.671333" 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-07-28T01:57:10.670983" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.672134" 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-07-28T01:57:10.671530" 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-07-28T01:57:10.672317" elapsed="0.000204"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:10.670291" 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-07-28T01:57:10.673002" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.672764" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.672750" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.673760" 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-07-28T01:57:10.673389" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.674555" 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-07-28T01:57:10.673940" 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-07-28T01:57:10.674775" elapsed="0.000183"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:10.672719" 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-07-28T01:57:10.675417" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.675178" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.675163" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.676184" 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-07-28T01:57:10.675826" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.677001" 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-07-28T01:57:10.676366" 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-07-28T01:57:10.677185" elapsed="0.000183"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:10.675132" 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-07-28T01:57:10.677843" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.677605" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.677590" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.678602" 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-07-28T01:57:10.678233" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.679386" 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-07-28T01:57:10.678783" 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-07-28T01:57:10.679585" elapsed="0.000182"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:10.677559" 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-07-28T01:57:10.680221" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.679984" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.679969" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.681007" 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-07-28T01:57:10.680655" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.681853" 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-07-28T01:57:10.681226" 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-07-28T01:57:10.682036" elapsed="0.000182"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:10.679939" 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-07-28T01:57:10.682692" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.682436" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.682420" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.683569" 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-07-28T01:57:10.683081" elapsed="0.000515"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.684359" 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-07-28T01:57:10.683755" 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-07-28T01:57:10.684560" elapsed="0.000199"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:10.682389" 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-07-28T01:57:10.685218" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.684975" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.684961" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.686003" 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-07-28T01:57:10.685622" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.686859" 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-07-28T01:57:10.686234" 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-07-28T01:57:10.687046" elapsed="0.000183"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:10.684930" elapsed="0.002336"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.687746" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.687504" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.687487" elapsed="0.000506"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.688506" 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-07-28T01:57:10.688134" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.689308" 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-07-28T01:57:10.688706" 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-07-28T01:57:10.689506" elapsed="0.000184"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:10.687402" 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-07-28T01:57:10.690146" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.689910" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.689895" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.690900" 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-07-28T01:57:10.690549" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.691697" 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-07-28T01:57:10.691082" 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-07-28T01:57:10.691882" elapsed="0.000181"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:10.689864" 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-07-28T01:57:10.692531" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.692280" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.692265" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.693297" 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-07-28T01:57:10.692947" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.694091" 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-07-28T01:57:10.693492" 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-07-28T01:57:10.694272" elapsed="0.000195"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:10.692235" 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-07-28T01:57:10.694923" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.694687" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.694673" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.695674" 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-07-28T01:57:10.695309" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.696863" 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-07-28T01:57:10.695854" elapsed="0.001039"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.697049" elapsed="0.000215"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:10.694642" elapsed="0.002661"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.697744" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.697503" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.697487" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.698548" 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-07-28T01:57:10.698176" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.699337" 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-07-28T01:57:10.698731" 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-07-28T01:57:10.699537" elapsed="0.000185"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:10.697440" 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-07-28T01:57:10.700181" elapsed="0.000319"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.699943" elapsed="0.000597"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.699929" elapsed="0.000636"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.701080" 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-07-28T01:57:10.700725" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.701883" 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-07-28T01:57:10.701263" 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-07-28T01:57:10.702069" elapsed="0.000182"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:10.699899" 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-07-28T01:57:10.702728" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.702489" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.702474" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.703482" 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-07-28T01:57:10.703117" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.704264" 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-07-28T01:57:10.703663" 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-07-28T01:57:10.704447" elapsed="0.000227"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:10.702427" 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-07-28T01:57:10.705136" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.704898" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.704884" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.705897" 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-07-28T01:57:10.705547" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.707108" 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-07-28T01:57:10.706076" elapsed="0.001264"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.707666" elapsed="0.000239"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:10.704853" elapsed="0.003091"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.708388" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.708144" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.708129" elapsed="0.000547"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.709201" 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-07-28T01:57:10.708820" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.710015" 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-07-28T01:57:10.709382" 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-07-28T01:57:10.710199" elapsed="0.000188"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:10.708093" 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-07-28T01:57:10.710939" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.710697" elapsed="0.000468"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.710681" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.711706" 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-07-28T01:57:10.711334" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.712508" 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-07-28T01:57:10.711888" 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-07-28T01:57:10.712713" elapsed="0.000182"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:10.710650" 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-07-28T01:57:10.713354" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.713115" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.713101" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.714123" 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-07-28T01:57:10.713767" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.714922" 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-07-28T01:57:10.714303" 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-07-28T01:57:10.715103" elapsed="0.000182"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:10.713070" 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-07-28T01:57:10.715756" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.715518" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.715503" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.716508" 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-07-28T01:57:10.716143" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.717320" 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-07-28T01:57:10.716720" 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-07-28T01:57:10.717519" elapsed="0.000183"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:10.715471" 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-07-28T01:57:10.718281" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.717921" elapsed="0.000603"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.717906" elapsed="0.000644"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.719046" 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-07-28T01:57:10.718696" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.719891" 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-07-28T01:57:10.719266" 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-07-28T01:57:10.720076" elapsed="0.000187"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:10.717875" elapsed="0.002426"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.720753" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.720497" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.720481" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.721507" 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-07-28T01:57:10.721140" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.722287" 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-07-28T01:57:10.721689" 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-07-28T01:57:10.722521" elapsed="0.000184"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:10.720435" 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-07-28T01:57:10.723162" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.722920" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.722905" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.723917" 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-07-28T01:57:10.723565" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.724907" 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-07-28T01:57:10.724139" 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-07-28T01:57:10.725091" elapsed="0.000183"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:10.722875" elapsed="0.002436"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.725743" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.725505" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.725490" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.726498" 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-07-28T01:57:10.726135" elapsed="0.000564"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.727468" 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-07-28T01:57:10.726856" 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-07-28T01:57:10.727820" elapsed="0.000183"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:10.725443" elapsed="0.002597"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.728473" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.728220" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.728206" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.729225" 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-07-28T01:57:10.728875" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.730022" 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-07-28T01:57:10.729405" 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-07-28T01:57:10.730204" elapsed="0.000183"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:10.728175" 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-07-28T01:57:10.730858" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.730621" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.730607" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.731647" 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-07-28T01:57:10.731245" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.732475" 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-07-28T01:57:10.731831" 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-07-28T01:57:10.732683" elapsed="0.000183"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:10.730575" elapsed="0.002329"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.733356" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.733087" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.733070" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.734108" 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-07-28T01:57:10.733761" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.734955" 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-07-28T01:57:10.734334" 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-07-28T01:57:10.735142" elapsed="0.000184"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:10.733039" elapsed="0.002325"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.735917" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.735671" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.735547" elapsed="0.000621"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.736717" 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-07-28T01:57:10.736315" elapsed="0.000429"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.737564" 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-07-28T01:57:10.736925" 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-07-28T01:57:10.737750" elapsed="0.000205"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:10.735516" elapsed="0.002477"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.738421" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.738182" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.738163" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.739185" 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-07-28T01:57:10.738827" elapsed="0.000384"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.739981" 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-07-28T01:57:10.739364" 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-07-28T01:57:10.740164" elapsed="0.000180"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:10.738130" 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-07-28T01:57:10.740831" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.740592" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.740563" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.741625" 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-07-28T01:57:10.741255" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.742439" 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-07-28T01:57:10.741806" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.742639" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:10.740532" 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-07-28T01:57:10.743275" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.743039" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.743024" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.744027" 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-07-28T01:57:10.743681" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.744844" 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-07-28T01:57:10.744214" 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-07-28T01:57:10.745066" elapsed="0.000216"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:10.742992" 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-07-28T01:57:10.745801" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.745518" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.745502" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.746572" 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-07-28T01:57:10.746200" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.747356" 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-07-28T01:57:10.746755" 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-07-28T01:57:10.747558" elapsed="0.000185"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:10.745469" 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-07-28T01:57:10.748224" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.747980" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.747965" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.749061" 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-07-28T01:57:10.748699" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.749859" 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-07-28T01:57:10.749242" 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-07-28T01:57:10.750042" elapsed="0.000182"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:10.747934" 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-07-28T01:57:10.750695" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.750441" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.750426" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.751434" 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-07-28T01:57:10.751082" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.752230" 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-07-28T01:57:10.751631" 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-07-28T01:57:10.752411" elapsed="0.000209"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:10.750395" 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-07-28T01:57:10.753196" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.752951" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.752826" elapsed="0.000618"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.753954" 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-07-28T01:57:10.753603" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.754754" 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-07-28T01:57:10.754134" 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-07-28T01:57:10.754937" elapsed="0.000184"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:10.752795" 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-07-28T01:57:10.755609" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.755338" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.755324" elapsed="0.000536"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.756355" 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-07-28T01:57:10.756004" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.757165" 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-07-28T01:57:10.756551" 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-07-28T01:57:10.757384" elapsed="0.000200"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:10.755293" elapsed="0.002329"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.758081" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.757803" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.757788" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.758840" 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-07-28T01:57:10.758488" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.759637" 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-07-28T01:57:10.759021" 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-07-28T01:57:10.759869" elapsed="0.000186"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:10.757758" 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-07-28T01:57:10.760903" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.760523" elapsed="0.000603"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.760504" elapsed="0.000646"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.761659" 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-07-28T01:57:10.761294" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.762441" 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-07-28T01:57:10.761841" 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-07-28T01:57:10.762655" elapsed="0.000182"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:10.760227" elapsed="0.002648"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.763330" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.763081" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.763064" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.764087" 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-07-28T01:57:10.763738" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.764936" 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-07-28T01:57:10.764303" 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-07-28T01:57:10.765119" elapsed="0.000183"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:10.763011" 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-07-28T01:57:10.765780" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.765540" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.765524" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.766534" 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-07-28T01:57:10.766167" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.767312" 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-07-28T01:57:10.766714" 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-07-28T01:57:10.767509" elapsed="0.000182"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:10.765491" 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-07-28T01:57:10.768149" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.767912" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.767895" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.768915" 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-07-28T01:57:10.768549" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.769755" 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-07-28T01:57:10.769130" 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-07-28T01:57:10.769940" elapsed="0.000183"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:10.767863" 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-07-28T01:57:10.770719" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.770471" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.770328" elapsed="0.000642"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.771487" 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-07-28T01:57:10.771114" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.772274" 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-07-28T01:57:10.771673" 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-07-28T01:57:10.772472" elapsed="0.000218"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:10.770297" elapsed="0.002431"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.773149" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.772910" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.772895" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.773906" 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-07-28T01:57:10.773554" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.774699" 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-07-28T01:57:10.774086" 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-07-28T01:57:10.774883" elapsed="0.000182"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:10.772864" 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-07-28T01:57:10.775536" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.775283" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.775268" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.776276" 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-07-28T01:57:10.775925" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.777083" 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-07-28T01:57:10.776470" 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-07-28T01:57:10.777266" elapsed="0.000180"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:10.775237" 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-07-28T01:57:10.777920" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.777682" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.777668" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.778674" 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-07-28T01:57:10.778307" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.779508" 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-07-28T01:57:10.778891" 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-07-28T01:57:10.779691" elapsed="0.000198"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:10.777637" 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-07-28T01:57:10.780348" elapsed="0.000211"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.780106" elapsed="0.000528"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.780091" elapsed="0.000570"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.781161" 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-07-28T01:57:10.780806" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.781964" 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-07-28T01:57:10.781343" 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-07-28T01:57:10.782149" elapsed="0.000183"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:10.780061" 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-07-28T01:57:10.782805" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.782568" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.782553" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.783569" 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-07-28T01:57:10.783200" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.784356" 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-07-28T01:57:10.783751" 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-07-28T01:57:10.784577" elapsed="0.000191"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:10.782522" 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-07-28T01:57:10.785224" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.784985" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.784971" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.785978" 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-07-28T01:57:10.785629" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.786778" 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-07-28T01:57:10.786158" 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-07-28T01:57:10.786961" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:10.784940" 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-07-28T01:57:10.787729" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.787484" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.787346" elapsed="0.000631"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.788488" 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-07-28T01:57:10.788119" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.789286" 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-07-28T01:57:10.788683" 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-07-28T01:57:10.789485" elapsed="0.000185"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:10.787315" 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-07-28T01:57:10.790130" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.789892" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.789877" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.790885" 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-07-28T01:57:10.790533" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.791681" 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-07-28T01:57:10.791066" 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-07-28T01:57:10.791865" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:10.789846" 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-07-28T01:57:10.792567" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.792304" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.792289" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.793309" 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-07-28T01:57:10.792958" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.794107" 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-07-28T01:57:10.793504" 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-07-28T01:57:10.794291" elapsed="0.000199"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:10.792259" 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-07-28T01:57:10.794943" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.794708" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.794694" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.795694" 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-07-28T01:57:10.795328" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.796489" 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-07-28T01:57:10.795874" 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-07-28T01:57:10.796694" elapsed="0.000183"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:10.794663" 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-07-28T01:57:10.797333" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.797095" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.797080" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.798094" 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-07-28T01:57:10.797740" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.798894" 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-07-28T01:57:10.798274" 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-07-28T01:57:10.799078" elapsed="0.000185"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:10.797050" 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-07-28T01:57:10.799738" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.799499" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.799484" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.800526" 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-07-28T01:57:10.800149" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.801326" 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-07-28T01:57:10.800723" 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-07-28T01:57:10.801524" elapsed="0.000182"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:10.799437" 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-07-28T01:57:10.802158" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.801922" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.801908" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.803060" 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-07-28T01:57:10.802560" elapsed="0.000527"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.803896" 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-07-28T01:57:10.803254" elapsed="0.000702"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.804117" elapsed="0.000232"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:10.801877" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.805023" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.804769" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.804595" elapsed="0.000679"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.805836" 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-07-28T01:57:10.805419" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.806645" 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-07-28T01:57:10.806021" 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-07-28T01:57:10.806832" elapsed="0.000184"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:10.804562" elapsed="0.002537"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.807586" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.807294" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.807279" elapsed="0.000558"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.808374" 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-07-28T01:57:10.807981" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.809302" 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-07-28T01:57:10.808603" elapsed="0.000728"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.809513" elapsed="0.000227"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:10.807247" elapsed="0.002531"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.810199" elapsed="0.000225"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.809958" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.809943" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.811044" 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-07-28T01:57:10.810651" elapsed="0.000419"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.811965" 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-07-28T01:57:10.811262" elapsed="0.000731"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.812187" elapsed="0.000185"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:10.809912" elapsed="0.002533"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.812958" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.812681" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.812667" elapsed="0.000583"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.813803" 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-07-28T01:57:10.813395" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.814693" 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-07-28T01:57:10.814029" 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-07-28T01:57:10.814880" elapsed="0.000222"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:10.812635" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.815657" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.815392" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.815349" elapsed="0.000597"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.816554" 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-07-28T01:57:10.816092" elapsed="0.000524"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.817492" 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-07-28T01:57:10.816785" elapsed="0.000737"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.817717" elapsed="0.000188"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:10.815315" elapsed="0.002628"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.818414" elapsed="0.000238"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.818171" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.818153" elapsed="0.000563"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.819258" 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-07-28T01:57:10.818862" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.820193" 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-07-28T01:57:10.819502" elapsed="0.000721"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.820380" elapsed="0.000270"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:10.818081" elapsed="0.002608"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.821161" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.820873" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.820859" elapsed="0.000605"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.822002" 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-07-28T01:57:10.821612" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.822882" 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-07-28T01:57:10.822221" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.823103" elapsed="0.000186"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:10.820827" elapsed="0.002501"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.824773" elapsed="0.000352"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.824120" elapsed="0.001071"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.823549" elapsed="0.001669"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.825843" 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-07-28T01:57:10.825400" elapsed="0.000470"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.826730" 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-07-28T01:57:10.826060" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.826965" elapsed="0.000194"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:10.823517" elapsed="0.003679"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.827742" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.827446" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.827431" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.828570" 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-07-28T01:57:10.828139" elapsed="0.000500"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.829521" 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-07-28T01:57:10.828799" elapsed="0.000752"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.829708" elapsed="0.000259"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:10.827397" elapsed="0.002608"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.830557" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.830232" elapsed="0.000553"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.830217" elapsed="0.000592"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.831379" 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-07-28T01:57:10.830988" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.832250" 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-07-28T01:57:10.831575" elapsed="0.000704"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.832484" elapsed="0.000206"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:10.830182" elapsed="0.002547"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.833190" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.832949" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.832934" elapsed="0.000555"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.834024" 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-07-28T01:57:10.833635" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.834948" 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-07-28T01:57:10.834249" elapsed="0.000728"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.835132" elapsed="0.000223"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:10.832864" elapsed="0.002529"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.835900" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.835627" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.835612" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.836767" 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-07-28T01:57:10.836332" elapsed="0.000462"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.837710" 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-07-28T01:57:10.836949" 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-07-28T01:57:10.837934" elapsed="0.000220"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:10.835577" elapsed="0.002616"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.838668" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.838374" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.838360" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.839503" 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-07-28T01:57:10.839097" elapsed="0.000434"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.840368" 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-07-28T01:57:10.839728" 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-07-28T01:57:10.840631" elapsed="0.000224"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:10.838329" elapsed="0.002565"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.841352" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.841076" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.841061" elapsed="0.000592"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.842189" 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-07-28T01:57:10.841801" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.843032" 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-07-28T01:57:10.842371" elapsed="0.000690"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.843311" elapsed="0.000206"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:10.841030" elapsed="0.002527"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.844172" elapsed="0.000231"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.843888" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.843761" elapsed="0.000723"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.845054" 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-07-28T01:57:10.844681" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.845974" 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-07-28T01:57:10.845274" elapsed="0.000731"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.846163" elapsed="0.000221"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:10.843729" elapsed="0.002695"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.846899" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.846623" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.846609" elapsed="0.000575"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.847736" 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-07-28T01:57:10.847328" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.848626" 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-07-28T01:57:10.847956" elapsed="0.000698"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.848851" elapsed="0.000186"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:10.846578" elapsed="0.002496"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.849551" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.849290" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.849242" elapsed="0.000598"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.850375" 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-07-28T01:57:10.849985" elapsed="0.000417"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.851255" 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-07-28T01:57:10.850574" elapsed="0.000731"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.851479" elapsed="0.000204"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:10.849211" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.852193" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.851943" elapsed="0.000524"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.851928" elapsed="0.000574"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.853048" 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-07-28T01:57:10.852682" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.853979" 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-07-28T01:57:10.853267" 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-07-28T01:57:10.854165" elapsed="0.000194"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:10.851897" elapsed="0.002499"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.854955" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.854637" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.854621" elapsed="0.000599"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.855822" 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-07-28T01:57:10.855398" elapsed="0.000450"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.856756" 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-07-28T01:57:10.856052" elapsed="0.000733"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.856942" elapsed="0.000213"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:10.854588" elapsed="0.002606"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.857633" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.857376" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.857362" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.858377" 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-07-28T01:57:10.858025" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.859177" 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-07-28T01:57:10.858575" 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-07-28T01:57:10.859360" elapsed="0.000199"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:10.857331" 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-07-28T01:57:10.860064" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.859778" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.859764" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.860900" 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-07-28T01:57:10.860486" elapsed="0.000440"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.861790" 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-07-28T01:57:10.861081" elapsed="0.000737"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.861973" elapsed="0.000222"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:10.859734" 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-07-28T01:57:10.862854" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.862592" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.862447" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.863690" 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-07-28T01:57:10.863304" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.864613" 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-07-28T01:57:10.863913" 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-07-28T01:57:10.864847" elapsed="0.000199"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:10.862380" elapsed="0.002705"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.865652" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.865313" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.865299" elapsed="0.000606"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.866541" 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-07-28T01:57:10.866085" elapsed="0.000484"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.867396" 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-07-28T01:57:10.866726" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.867641" elapsed="0.000221"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:10.865266" elapsed="0.002635"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.868373" elapsed="0.000259"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.868084" elapsed="0.000623"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.868069" elapsed="0.000665"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.869252" 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-07-28T01:57:10.868882" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.870113" 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-07-28T01:57:10.869491" 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-07-28T01:57:10.870337" elapsed="0.000203"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:10.868038" elapsed="0.002553"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.871057" elapsed="0.000192"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.870774" elapsed="0.000525"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.870760" elapsed="0.000564"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.871915" 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-07-28T01:57:10.871483" elapsed="0.000458"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.872799" 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-07-28T01:57:10.872110" elapsed="0.000717"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.872982" elapsed="0.000222"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:10.870729" elapsed="0.002513"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.873725" elapsed="0.000190"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.873421" elapsed="0.000532"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.873407" elapsed="0.000570"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.874541" 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-07-28T01:57:10.874123" elapsed="0.000447"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.875426" 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-07-28T01:57:10.874728" elapsed="0.000740"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.875628" elapsed="0.000261"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:10.873376" elapsed="0.002553"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.876353" elapsed="0.000272"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.876113" elapsed="0.000552"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.876098" elapsed="0.000591"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.877237" 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-07-28T01:57:10.876833" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.878086" 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-07-28T01:57:10.877418" elapsed="0.000697"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.878280" elapsed="0.000236"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:10.876066" elapsed="0.002489"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.879043" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.878736" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.878721" elapsed="0.000582"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.879899" 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-07-28T01:57:10.879495" elapsed="0.000431"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.880803" 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-07-28T01:57:10.880082" elapsed="0.000750"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.880989" elapsed="0.000183"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:10.878691" elapsed="0.002557"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.881860" elapsed="0.000226"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.881612" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.881484" elapsed="0.000666"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.882721" 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-07-28T01:57:10.882306" elapsed="0.000442"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.883615" 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-07-28T01:57:10.882952" 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-07-28T01:57:10.883847" elapsed="0.000185"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:10.881436" elapsed="0.002668"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.884600" elapsed="0.000261"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.884294" elapsed="0.000607"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.884279" elapsed="0.000647"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.885491" 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-07-28T01:57:10.885070" elapsed="0.000449"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.886364" 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-07-28T01:57:10.885676" elapsed="0.000716"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.886562" elapsed="0.000227"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:10.884247" elapsed="0.002580"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.887298" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.887009" elapsed="0.000529"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.886994" elapsed="0.000569"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.888107" 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-07-28T01:57:10.887752" elapsed="0.000447"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.889513" 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-07-28T01:57:10.888737" elapsed="0.000805"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.889746" elapsed="0.000187"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:10.886963" elapsed="0.003008"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.890428" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.890189" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.890174" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.891279" 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-07-28T01:57:10.890880" elapsed="0.000460"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.892211" 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-07-28T01:57:10.891514" elapsed="0.000727"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.892398" elapsed="0.000217"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:10.890141" elapsed="0.002548"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.893122" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.892883" elapsed="0.000505"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.892868" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.893971" 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-07-28T01:57:10.893581" elapsed="0.000416"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.894860" 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-07-28T01:57:10.894195" elapsed="0.000726"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.895131" elapsed="0.000188"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:10.892837" elapsed="0.002520"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.895832" elapsed="0.000232"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.895591" elapsed="0.000512"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.895577" elapsed="0.000550"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.896716" 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-07-28T01:57:10.896304" elapsed="0.000439"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.897610" 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-07-28T01:57:10.896901" elapsed="0.000738"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.897796" elapsed="0.000220"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:10.895544" elapsed="0.002510"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.898530" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.898273" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.898222" elapsed="0.000603"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.899355" 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-07-28T01:57:10.898970" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.900229" 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-07-28T01:57:10.899592" 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-07-28T01:57:10.900464" elapsed="0.000241"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:10.898191" elapsed="0.002552"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.901363" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.901080" elapsed="0.000539"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.900951" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.902231" 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-07-28T01:57:10.901833" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.903133" 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-07-28T01:57:10.902475" elapsed="0.000687"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.903365" elapsed="0.000216"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:10.900879" elapsed="0.002741"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.904086" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.903801" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.903786" elapsed="0.000596"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.904989" 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-07-28T01:57:10.904581" elapsed="0.000435"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.905904" 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-07-28T01:57:10.905183" elapsed="0.000750"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:10.906089" elapsed="0.000183"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:10.903755" elapsed="0.002554"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:10.647976" elapsed="0.258364"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.907648" 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-07-28T01:57:10.906511" elapsed="0.001165"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.907769" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:57:10.907933" 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-07-28T01:57:10.592352" elapsed="0.315608"/>
</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-07-28T01:57:10.909328" 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-07-28T01:57:10.909036" elapsed="0.000366">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-07-28T01:57:10.909513" 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-07-28T01:57:10.908698" elapsed="0.000841"/>
</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-07-28T01:57:10.909859" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.909611" elapsed="0.000306"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.910431" 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-07-28T01:57:10.910139" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.909941" elapsed="0.000568"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.909593" elapsed="0.000938"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.912877" 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-07-28T01:57:10.910684" elapsed="0.002220"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:10.912956" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:10.913110" 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-07-28T01:57:10.908314" elapsed="0.004821"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.914669" 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-07-28T01:57:10.914399" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.915127" 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-07-28T01:57:10.914867" elapsed="0.000999"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.916275" 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-07-28T01:57:10.916024" elapsed="0.000296"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.916754" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.916507" elapsed="0.000290"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:10.917614" 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-07-28T01:57:10.917400" elapsed="0.000240"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:10.917962" 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-07-28T01:57:10.917792" 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-07-28T01:57:10.918135" elapsed="0.000188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.918736" 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-07-28T01:57:10.918490" elapsed="0.000290"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:10.918821" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:10.918975" 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-07-28T01:57:10.916999" elapsed="0.002000"/>
</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-07-28T01:57:10.956168" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:10.956604" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:57:10.956853" 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-07-28T01:57:10.921353" elapsed="0.035560"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.919260" elapsed="0.037758"/>
</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-07-28T01:57:10.957426" elapsed="0.000082"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.957076" elapsed="0.000536"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.919051" elapsed="0.038610"/>
</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-07-28T01:57:10.965246" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.960063" elapsed="0.005249"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.959557" elapsed="0.005804"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.959513" elapsed="0.005884"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.968871" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:10.965813" elapsed="0.003122"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.965496" elapsed="0.003488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.965470" elapsed="0.003549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.969818" 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-07-28T01:57:10.969271" elapsed="0.000585"/>
</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-07-28T01:57:10.970304" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.969954" elapsed="0.000430"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.971098" 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-07-28T01:57:10.970679" elapsed="0.000455"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.970417" elapsed="0.000766"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.969929" elapsed="0.001284"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.971981" 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-07-28T01:57:10.971450" elapsed="0.000568"/>
</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-07-28T01:57:10.972494" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.972113" elapsed="0.000463"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.973272" 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-07-28T01:57:10.972854" elapsed="0.000454"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:10.972610" elapsed="0.000746"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.972089" elapsed="0.001298"/>
</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-07-28T01:57:10.973619" elapsed="0.000480"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:10.974735" 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-07-28T01:57:10.974328" elapsed="0.000444"/>
</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-07-28T01:57:10.974986" elapsed="0.002975"/>
</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-07-28T01:57:10.958441" elapsed="0.019583"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:10.978203" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:10.978096" elapsed="0.000154"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.978078" elapsed="0.000195"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:10.980691" 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-07-28T01:57:10.978420" elapsed="0.002298"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:10.980766" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:10.980924" 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-07-28T01:57:10.913471" elapsed="0.067477"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.981056" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:10.981218" 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-07-28T01:57:10.506658" elapsed="0.474585"/>
</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-07-28T01:57:10.981606" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:10.981349" elapsed="0.000326"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:10.981331" elapsed="0.000368"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:10.981732" elapsed="0.000026"/>
</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-07-28T01:57:10.503567" elapsed="0.478289"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:10.491994" elapsed="0.489907"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:10.982557" 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-07-28T01:57:10.982141" elapsed="0.000443"/>
</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-07-28T01:57:11.024737" 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-07-28T01:57:11.024323" elapsed="0.000442"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.025492" 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-07-28T01:57:11.025258" elapsed="0.000304">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-07-28T01:57:11.025655" 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-07-28T01:57:11.024928" elapsed="0.000752"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.026227" 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-07-28T01:57:11.025842" elapsed="0.000411"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.026561" 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-07-28T01:57:11.026712" 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-07-28T01:57:11.026411" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.027132" 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-07-28T01:57:11.026892" elapsed="0.000284"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.028123" 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-07-28T01:57:11.027871" elapsed="0.000296"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.028628" 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-07-28T01:57:11.028326" elapsed="0.000327"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.029357" 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-07-28T01:57:11.029014" elapsed="0.000369"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:11.030406" 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-07-28T01:57:11.029935" elapsed="0.000497"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:11.030534" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:11.030694" 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-07-28T01:57:11.029593" elapsed="0.001126"/>
</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-07-28T01:57:11.030871" elapsed="0.000276"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:2</var>
<status status="PASS" start="2026-07-28T01:57:11.028877" elapsed="0.002312"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:11.028707" elapsed="0.002517"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:11.031268" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.031467" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A2'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:11.027549" elapsed="0.003946"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.027243" elapsed="0.004285"/>
</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-07-28T01:57:11.031706" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.031552" elapsed="0.000210"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.027224" elapsed="0.004559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.032481" 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-07-28T01:57:11.031925" elapsed="0.000585"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.032558" elapsed="0.000030"/>
</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-07-28T01:57:11.023703" elapsed="0.008980"/>
</kw>
<msg time="2026-07-28T01:57:11.032738" 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-07-28T01:57:11.011062" elapsed="0.021724"/>
</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-07-28T01:57:11.044998" 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-07-28T01:57:11.057137" 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-07-28T01:57:11.069114" 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-07-28T01:57:11.069309" 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-07-28T01:57:11.069498" 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-07-28T01:57:11.069861" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.069716" elapsed="0.000199"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:11.069702" 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-07-28T01:57:11.070077" 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-07-28T01:57:11.070283" 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-07-28T01:57:11.070449" elapsed="0.000039"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:11.069674" elapsed="0.000848"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.069576" 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-07-28T01:57:11.070721" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.070800" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:57:11.070918" 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-07-28T01:57:11.006920" elapsed="0.064031"/>
</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-07-28T01:57:11.081930" elapsed="0.000337"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.095161" 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-07-28T01:57:11.094788" elapsed="0.000400"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.095907" 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-07-28T01:57:11.095704" elapsed="0.000267">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-07-28T01:57:11.096063" 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-07-28T01:57:11.095355" elapsed="0.000732"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.096656" 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-07-28T01:57:11.096249" elapsed="0.000434"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.096974" 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-07-28T01:57:11.097096" 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-07-28T01:57:11.096844" elapsed="0.000277"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.097568" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.097277" elapsed="0.000337"/>
</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-07-28T01:57:11.097968" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.097681" elapsed="0.000346"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.098507" 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-07-28T01:57:11.098201" elapsed="0.000332"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.098051" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.097663" elapsed="0.000926"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.099152" 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-07-28T01:57:11.098733" elapsed="0.000446"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.099227" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.099377" 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-07-28T01:57:11.094158" elapsed="0.005244"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.112685" 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-07-28T01:57:11.112268" elapsed="0.000446"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.113424" 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-07-28T01:57:11.113222" elapsed="0.000281">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-07-28T01:57:11.113597" 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-07-28T01:57:11.112876" elapsed="0.000745"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.114162" 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-07-28T01:57:11.113783" elapsed="0.000408"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.114497" 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-07-28T01:57:11.114621" 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-07-28T01:57:11.114351" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.115042" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.114801" elapsed="0.000285"/>
</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-07-28T01:57:11.115439" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.115152" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.115977" 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-07-28T01:57:11.115685" elapsed="0.000318"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.115538" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.115134" elapsed="0.000925"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.116655" 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-07-28T01:57:11.116203" elapsed="0.000479"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.116729" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.116880" 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-07-28T01:57:11.111653" elapsed="0.005251"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.129952" 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-07-28T01:57:11.129577" elapsed="0.000403"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.130696" 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-07-28T01:57:11.130490" elapsed="0.000269">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-07-28T01:57:11.130852" 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-07-28T01:57:11.130141" elapsed="0.000735"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.131423" 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-07-28T01:57:11.131040" elapsed="0.000409"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.131760" 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-07-28T01:57:11.131916" 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-07-28T01:57:11.131627" elapsed="0.000316"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.132343" 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-07-28T01:57:11.132099" elapsed="0.000312"/>
</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-07-28T01:57:11.132783" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.132493" elapsed="0.000349"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.133307" 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-07-28T01:57:11.133010" elapsed="0.000323"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.132866" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.132474" elapsed="0.000915"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.134155" 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-07-28T01:57:11.133550" elapsed="0.000637"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.134235" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.134387" 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-07-28T01:57:11.129023" elapsed="0.005390"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.134834" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:11.134592" elapsed="0.000268"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.135380" 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-07-28T01:57:11.135018" elapsed="0.000388"/>
</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-07-28T01:57:11.136039" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.135803" elapsed="0.000293"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.135789" elapsed="0.000331"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.136676" 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-07-28T01:57:11.136265" elapsed="0.000437"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.137640" 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-07-28T01:57:11.136857" elapsed="0.000812"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.137826" elapsed="0.000189"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:11.135757" 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-07-28T01:57:11.138482" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.138231" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.138216" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.139255" 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-07-28T01:57:11.138874" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.140064" 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-07-28T01:57:11.139441" 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-07-28T01:57:11.140247" elapsed="0.000196"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:11.138185" elapsed="0.002344"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.140948" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.140710" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.140696" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.141748" 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-07-28T01:57:11.141379" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.142588" 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-07-28T01:57:11.141964" 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-07-28T01:57:11.142772" elapsed="0.000182"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:11.140665" 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-07-28T01:57:11.143411" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.143172" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.143158" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.144169" 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-07-28T01:57:11.143819" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.145291" 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-07-28T01:57:11.144657" 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-07-28T01:57:11.145492" elapsed="0.000183"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:11.143126" elapsed="0.002587"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.146131" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.145894" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.145879" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.146926" 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-07-28T01:57:11.146570" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.147724" 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-07-28T01:57:11.147107" 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-07-28T01:57:11.147931" elapsed="0.000192"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:11.145849" 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-07-28T01:57:11.148632" elapsed="0.000236"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.148341" elapsed="0.000576"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.148326" elapsed="0.000616"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.149444" 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-07-28T01:57:11.149092" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.150279" 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-07-28T01:57:11.149676" 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-07-28T01:57:11.150476" elapsed="0.000183"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:11.148296" elapsed="0.002401"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.151111" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.150875" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.150860" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.151859" 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-07-28T01:57:11.151511" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.152674" 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-07-28T01:57:11.152039" elapsed="0.000696"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.152895" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:11.150830" 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-07-28T01:57:11.153585" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.153295" elapsed="0.000519"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.153280" elapsed="0.000559"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.154337" 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-07-28T01:57:11.153984" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.155261" 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-07-28T01:57:11.154534" elapsed="0.000755"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.155445" elapsed="0.000200"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:11.153249" 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-07-28T01:57:11.156100" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.155863" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.155849" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.156867" 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-07-28T01:57:11.156514" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.157660" 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-07-28T01:57:11.157047" 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-07-28T01:57:11.157844" elapsed="0.000180"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:11.155818" 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-07-28T01:57:11.158489" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.158239" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.158224" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.159223" 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-07-28T01:57:11.158876" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.160047" 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-07-28T01:57:11.159403" 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-07-28T01:57:11.160233" elapsed="0.000206"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:11.158194" 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-07-28T01:57:11.160911" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.160674" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.160659" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.161665" 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-07-28T01:57:11.161299" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.162443" 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-07-28T01:57:11.161847" 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-07-28T01:57:11.162643" elapsed="0.000181"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:11.160629" 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-07-28T01:57:11.163306" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.163040" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.163025" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.164072" 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-07-28T01:57:11.163722" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.164949" 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-07-28T01:57:11.164308" 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-07-28T01:57:11.165132" elapsed="0.000180"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:11.162994" 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-07-28T01:57:11.165782" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.165546" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.165532" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.166536" 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-07-28T01:57:11.166171" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.167318" 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-07-28T01:57:11.166716" 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-07-28T01:57:11.167516" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:11.165501" 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-07-28T01:57:11.168189" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.167914" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.167899" elapsed="0.000569"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.169000" 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-07-28T01:57:11.168620" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.169803" 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-07-28T01:57:11.169182" 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-07-28T01:57:11.169986" elapsed="0.000180"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:11.167869" 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-07-28T01:57:11.170636" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.170384" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.170369" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.171513" 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-07-28T01:57:11.171023" elapsed="0.000516"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.172295" 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-07-28T01:57:11.171696" 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-07-28T01:57:11.172519" elapsed="0.000183"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:11.170338" 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-07-28T01:57:11.173157" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.172920" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.172905" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.173951" 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-07-28T01:57:11.173559" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.174755" 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-07-28T01:57:11.174133" 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-07-28T01:57:11.174939" elapsed="0.000182"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:11.172874" 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-07-28T01:57:11.175627" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.175338" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.175323" elapsed="0.000552"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.176382" 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-07-28T01:57:11.176020" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.177183" 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-07-28T01:57:11.176581" 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-07-28T01:57:11.177366" elapsed="0.000198"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:11.175293" 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-07-28T01:57:11.178020" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.177783" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.177768" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.178774" 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-07-28T01:57:11.178408" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.179569" 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-07-28T01:57:11.178954" 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-07-28T01:57:11.179752" elapsed="0.000185"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:11.177737" 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-07-28T01:57:11.180424" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.180158" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.180143" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.181181" 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-07-28T01:57:11.180833" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.181973" 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-07-28T01:57:11.181360" 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-07-28T01:57:11.182155" elapsed="0.000180"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:11.180112" 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-07-28T01:57:11.182807" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.182569" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.182553" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.183589" 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-07-28T01:57:11.183195" elapsed="0.000420"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.184432" 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-07-28T01:57:11.183795" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.184652" elapsed="0.000185"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:11.182521" elapsed="0.002354"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.185292" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.185055" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.185040" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.186045" 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-07-28T01:57:11.185698" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.186839" 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-07-28T01:57:11.186224" 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-07-28T01:57:11.187059" elapsed="0.000186"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:11.185010" 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-07-28T01:57:11.187721" elapsed="0.000975"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.187478" elapsed="0.001259"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.187448" elapsed="0.001313"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.189260" 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-07-28T01:57:11.188907" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.190066" 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-07-28T01:57:11.189443" 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-07-28T01:57:11.190250" elapsed="0.000183"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:11.187417" elapsed="0.003070"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.190945" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.190706" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.190691" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.191701" 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-07-28T01:57:11.191334" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.192510" 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-07-28T01:57:11.191884" 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-07-28T01:57:11.192695" elapsed="0.000182"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:11.190659" 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-07-28T01:57:11.193333" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.193095" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.193080" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.194086" 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-07-28T01:57:11.193738" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.194884" 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-07-28T01:57:11.194268" 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-07-28T01:57:11.195068" elapsed="0.000181"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:11.193049" 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-07-28T01:57:11.195722" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.195481" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.195465" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.196508" 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-07-28T01:57:11.196109" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.197318" 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-07-28T01:57:11.196692" 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-07-28T01:57:11.197529" elapsed="0.000187"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:11.195421" 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-07-28T01:57:11.198173" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.197934" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.197919" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.198933" 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-07-28T01:57:11.198578" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.199781" 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-07-28T01:57:11.199151" 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-07-28T01:57:11.199964" elapsed="0.000184"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:11.197888" 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-07-28T01:57:11.200636" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.200377" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.200362" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.201411" 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-07-28T01:57:11.201029" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.202217" 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-07-28T01:57:11.201611" 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-07-28T01:57:11.202400" elapsed="0.000200"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:11.200320" 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-07-28T01:57:11.203057" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.202818" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.202804" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.203817" 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-07-28T01:57:11.203448" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.204678" 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-07-28T01:57:11.203999" 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-07-28T01:57:11.204864" elapsed="0.000183"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:11.202773" elapsed="0.002311"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.205524" elapsed="0.000307"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.205269" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.205255" elapsed="0.000641"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.206394" 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-07-28T01:57:11.206043" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.207198" 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-07-28T01:57:11.206594" 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-07-28T01:57:11.207381" elapsed="0.000199"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:11.205224" elapsed="0.002395"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.208034" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.207798" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.207784" elapsed="0.000542"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.209064" 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-07-28T01:57:11.208706" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.209861" 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-07-28T01:57:11.209246" 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-07-28T01:57:11.210044" elapsed="0.000182"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:11.207753" elapsed="0.002511"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.210722" elapsed="0.000193"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.210443" elapsed="0.000545"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.210429" elapsed="0.000587"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.211573" 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-07-28T01:57:11.211197" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.212422" 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-07-28T01:57:11.211795" 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-07-28T01:57:11.212628" elapsed="0.000184"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:11.210398" elapsed="0.002452"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.213267" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.213031" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.213016" elapsed="0.000510"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.214021" 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-07-28T01:57:11.213671" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.214825" 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-07-28T01:57:11.214203" 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-07-28T01:57:11.215009" elapsed="0.000182"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:11.212986" 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-07-28T01:57:11.215662" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.215408" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.215394" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.216412" 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-07-28T01:57:11.216049" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.217219" 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-07-28T01:57:11.216613" 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-07-28T01:57:11.217402" elapsed="0.000198"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:11.215364" 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-07-28T01:57:11.218053" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.217816" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.217801" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.218803" 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-07-28T01:57:11.218438" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.219645" 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-07-28T01:57:11.219025" 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-07-28T01:57:11.219826" elapsed="0.000206"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:11.217771" 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-07-28T01:57:11.220526" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.220250" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.220236" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.221270" 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-07-28T01:57:11.220917" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.222073" 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-07-28T01:57:11.221465" 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-07-28T01:57:11.222256" elapsed="0.000182"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:11.220206" 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-07-28T01:57:11.223066" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.222711" elapsed="0.000582"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.222697" elapsed="0.000622"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.223833" 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-07-28T01:57:11.223479" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.224652" 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-07-28T01:57:11.224015" 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-07-28T01:57:11.224837" elapsed="0.000185"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:11.222665" 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-07-28T01:57:11.225495" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.225242" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.225227" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.226239" 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-07-28T01:57:11.225888" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.227036" 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-07-28T01:57:11.226420" 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-07-28T01:57:11.227222" elapsed="0.000183"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:11.225196" 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-07-28T01:57:11.227875" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.227638" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.227624" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.228649" 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-07-28T01:57:11.228262" elapsed="0.000413"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.229425" 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-07-28T01:57:11.228829" 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-07-28T01:57:11.229623" elapsed="0.000182"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:11.227593" 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-07-28T01:57:11.230255" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.230021" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.230007" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.231004" 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-07-28T01:57:11.230658" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.231794" 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-07-28T01:57:11.231182" 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-07-28T01:57:11.231975" elapsed="0.000182"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:11.229977" 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-07-28T01:57:11.232665" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.232402" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.232387" elapsed="0.000525"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.233403" 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-07-28T01:57:11.233053" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.234198" 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-07-28T01:57:11.233599" 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-07-28T01:57:11.234416" elapsed="0.000199"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:11.232329" 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-07-28T01:57:11.235074" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.234835" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.234821" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.235832" 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-07-28T01:57:11.235479" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.236644" 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-07-28T01:57:11.236013" 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-07-28T01:57:11.236827" elapsed="0.000181"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:11.234790" 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-07-28T01:57:11.237483" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.237227" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.237213" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.238257" 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-07-28T01:57:11.237873" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.239055" 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-07-28T01:57:11.238437" 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-07-28T01:57:11.239237" elapsed="0.000180"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:11.237182" 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-07-28T01:57:11.240005" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.239762" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.239637" elapsed="0.000622"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.240787" 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-07-28T01:57:11.240417" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.241625" 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-07-28T01:57:11.240967" elapsed="0.000687"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.241811" elapsed="0.000183"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:11.239607" elapsed="0.002425"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.242465" elapsed="0.000189"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.242213" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.242198" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.243217" 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-07-28T01:57:11.242862" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.244017" 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-07-28T01:57:11.243399" 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-07-28T01:57:11.244200" elapsed="0.000211"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:11.242168" 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-07-28T01:57:11.244886" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.244649" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.244634" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.245638" 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-07-28T01:57:11.245273" elapsed="0.000424"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.246479" 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-07-28T01:57:11.245859" 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-07-28T01:57:11.246664" elapsed="0.000183"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:11.244603" 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-07-28T01:57:11.247302" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.247065" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.247051" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.248092" 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-07-28T01:57:11.247735" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.248922" 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-07-28T01:57:11.248272" 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-07-28T01:57:11.249107" elapsed="0.000182"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:11.247020" 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-07-28T01:57:11.249761" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.249524" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.249509" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.250519" 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-07-28T01:57:11.250149" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.251299" 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-07-28T01:57:11.250699" 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-07-28T01:57:11.251500" elapsed="0.000183"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:11.249477" 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-07-28T01:57:11.252138" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.251902" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.251885" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.252902" 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-07-28T01:57:11.252555" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.253701" 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-07-28T01:57:11.253081" 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-07-28T01:57:11.253884" elapsed="0.000180"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:11.251855" 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-07-28T01:57:11.254532" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.254280" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.254266" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.255269" 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-07-28T01:57:11.254922" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.256060" 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-07-28T01:57:11.255446" 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-07-28T01:57:11.256276" elapsed="0.000230"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:11.254236" 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-07-28T01:57:11.257115" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.256835" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.256711" elapsed="0.000693"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.257919" 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-07-28T01:57:11.257564" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.258722" 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-07-28T01:57:11.258101" 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-07-28T01:57:11.258942" elapsed="0.000185"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:11.256679" elapsed="0.002485"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.259597" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.259345" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.259330" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.260352" 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-07-28T01:57:11.259987" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.261151" 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-07-28T01:57:11.260548" 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-07-28T01:57:11.261333" elapsed="0.000197"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:11.259299" 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-07-28T01:57:11.261981" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.261746" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.261731" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.262733" 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-07-28T01:57:11.262366" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.263522" 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-07-28T01:57:11.262911" 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-07-28T01:57:11.263703" elapsed="0.000179"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:11.261701" 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-07-28T01:57:11.264350" elapsed="0.000216"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.264098" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.264083" elapsed="0.000549"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.265131" 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-07-28T01:57:11.264780" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.265932" 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-07-28T01:57:11.265314" 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-07-28T01:57:11.266115" elapsed="0.000183"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:11.264052" 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-07-28T01:57:11.266775" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.266536" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.266520" elapsed="0.000502"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.267531" 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-07-28T01:57:11.267165" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.268381" 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-07-28T01:57:11.267712" elapsed="0.000699"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.268624" elapsed="0.000184"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:11.266488" elapsed="0.002358"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.269264" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.269026" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.269011" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.270021" 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-07-28T01:57:11.269669" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.270963" 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-07-28T01:57:11.270202" elapsed="0.000790"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.271148" elapsed="0.000182"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:11.268981" 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-07-28T01:57:11.271803" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.271566" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.271551" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.273001" 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-07-28T01:57:11.272189" elapsed="0.000839"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.273809" 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-07-28T01:57:11.273185" 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-07-28T01:57:11.273992" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:11.271520" elapsed="0.002692"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.274761" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.274515" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.274377" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.275525" 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-07-28T01:57:11.275152" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.276310" 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-07-28T01:57:11.275707" 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-07-28T01:57:11.276524" elapsed="0.000185"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:11.274346" elapsed="0.002401"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.277165" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.276929" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.276914" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.277924" 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-07-28T01:57:11.277574" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.278725" 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-07-28T01:57:11.278103" 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-07-28T01:57:11.278909" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:11.276883" 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-07-28T01:57:11.279560" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.279308" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.279293" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.280296" 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-07-28T01:57:11.279948" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.281298" 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-07-28T01:57:11.280553" elapsed="0.000774"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.281500" elapsed="0.000185"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:11.279263" elapsed="0.002461"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.282146" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.281906" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.281892" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.282906" 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-07-28T01:57:11.282552" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.283700" 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-07-28T01:57:11.283085" 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-07-28T01:57:11.283883" elapsed="0.000181"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:11.281860" 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-07-28T01:57:11.284548" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.284280" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.284265" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.285285" 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-07-28T01:57:11.284937" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.286080" 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-07-28T01:57:11.285478" 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-07-28T01:57:11.286261" elapsed="0.000182"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:11.284235" 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-07-28T01:57:11.286917" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.286678" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.286662" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.287673" 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-07-28T01:57:11.287306" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.288481" 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-07-28T01:57:11.287853" 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-07-28T01:57:11.288664" elapsed="0.000182"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:11.286631" 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-07-28T01:57:11.289297" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.289061" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.289046" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.290047" 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-07-28T01:57:11.289701" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.290840" 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-07-28T01:57:11.290224" 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-07-28T01:57:11.291060" elapsed="0.000182"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:11.289016" 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-07-28T01:57:11.291831" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.291584" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.291444" elapsed="0.000669"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.292658" 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-07-28T01:57:11.292260" elapsed="0.000425"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.293445" 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-07-28T01:57:11.292841" 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-07-28T01:57:11.293646" elapsed="0.000183"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:11.291414" elapsed="0.002453"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.294286" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.294048" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.294033" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.295094" 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-07-28T01:57:11.294693" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.295892" 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-07-28T01:57:11.295275" 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-07-28T01:57:11.296075" elapsed="0.000182"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:11.294002" 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-07-28T01:57:11.296745" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.296503" elapsed="0.000463"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.296487" elapsed="0.000504"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.297497" 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-07-28T01:57:11.297132" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.298278" 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-07-28T01:57:11.297678" 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-07-28T01:57:11.298475" elapsed="0.000184"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:11.296440" 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-07-28T01:57:11.299115" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.298876" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.298862" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.299866" 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-07-28T01:57:11.299515" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.300669" 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-07-28T01:57:11.300045" 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-07-28T01:57:11.300850" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:11.298831" 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-07-28T01:57:11.301498" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.301246" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.301232" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.302237" 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-07-28T01:57:11.301888" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.303032" 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-07-28T01:57:11.302417" 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-07-28T01:57:11.303214" elapsed="0.000181"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:11.301201" 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-07-28T01:57:11.303908" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.303669" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.303655" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.304745" 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-07-28T01:57:11.304329" elapsed="0.000443"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.305545" 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-07-28T01:57:11.304927" 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-07-28T01:57:11.305729" elapsed="0.000182"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:11.303623" elapsed="0.002325"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.306371" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.306129" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.306114" elapsed="0.000520"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.307125" 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-07-28T01:57:11.306777" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.307919" 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-07-28T01:57:11.307304" 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-07-28T01:57:11.308102" elapsed="0.000181"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:11.306083" 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-07-28T01:57:11.308885" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.308638" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.308517" elapsed="0.000617"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.309649" 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-07-28T01:57:11.309282" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.310431" 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-07-28T01:57:11.309832" 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-07-28T01:57:11.310633" elapsed="0.000184"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:11.308485" elapsed="0.002369"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.311273" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.311036" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.311021" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.312029" 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-07-28T01:57:11.311678" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.312844" 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-07-28T01:57:11.312210" 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-07-28T01:57:11.313027" elapsed="0.000185"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:11.310990" 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-07-28T01:57:11.313683" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.313428" elapsed="0.000503"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.313413" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.314488" 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-07-28T01:57:11.314115" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.315277" 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-07-28T01:57:11.314675" 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-07-28T01:57:11.315514" elapsed="0.000187"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:11.313383" 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-07-28T01:57:11.316158" elapsed="0.000212"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.315919" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.315905" elapsed="0.000528"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.316947" 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-07-28T01:57:11.316595" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.317744" 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-07-28T01:57:11.317128" 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-07-28T01:57:11.317927" elapsed="0.000182"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:11.315874" 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-07-28T01:57:11.318576" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.318325" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.318310" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.319311" 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-07-28T01:57:11.318963" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.320108" 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-07-28T01:57:11.319508" 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-07-28T01:57:11.320305" elapsed="0.000200"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:11.318280" 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-07-28T01:57:11.320958" elapsed="0.000195"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.320721" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.320707" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.321724" 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-07-28T01:57:11.321358" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.322521" 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-07-28T01:57:11.321904" 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-07-28T01:57:11.322705" elapsed="0.000181"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:11.320676" 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-07-28T01:57:11.323344" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.323107" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.323091" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.324091" 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-07-28T01:57:11.323745" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.324937" 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-07-28T01:57:11.324270" elapsed="0.000694"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.325119" elapsed="0.000180"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:11.323060" 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-07-28T01:57:11.325887" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.325643" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.325520" elapsed="0.000615"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.326648" 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-07-28T01:57:11.326280" elapsed="0.000428"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.327487" 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-07-28T01:57:11.326868" 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-07-28T01:57:11.327673" elapsed="0.000182"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:11.325488" 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-07-28T01:57:11.328332" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.328073" elapsed="0.000502"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.328058" elapsed="0.000546"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.329097" 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-07-28T01:57:11.328747" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.329892" 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-07-28T01:57:11.329277" 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-07-28T01:57:11.330075" elapsed="0.000181"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:11.328028" 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-07-28T01:57:11.330728" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.330489" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.330473" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.331509" 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-07-28T01:57:11.331141" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.332300" 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-07-28T01:57:11.331688" 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-07-28T01:57:11.332497" elapsed="0.000183"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:11.330428" 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-07-28T01:57:11.333135" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.332898" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.332883" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.333886" 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-07-28T01:57:11.333537" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.334677" 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-07-28T01:57:11.334065" 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-07-28T01:57:11.334858" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:11.332853" 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-07-28T01:57:11.335505" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.335255" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.335240" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.336279" 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-07-28T01:57:11.335893" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.337513" 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-07-28T01:57:11.336887" 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-07-28T01:57:11.337695" elapsed="0.000181"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:11.335210" elapsed="0.002703"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.338420" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.338133" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.338115" elapsed="0.000573"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.339184" 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-07-28T01:57:11.338833" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.339990" 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-07-28T01:57:11.339366" 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-07-28T01:57:11.340173" elapsed="0.000209"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:11.338047" 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-07-28T01:57:11.340857" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.340618" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.340604" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.341613" 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-07-28T01:57:11.341247" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.342392" 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-07-28T01:57:11.341793" 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-07-28T01:57:11.342589" elapsed="0.000227"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:11.340573" 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-07-28T01:57:11.343389" elapsed="0.000203"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.343145" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.343023" elapsed="0.000633"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.344151" 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-07-28T01:57:11.343800" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.344969" 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-07-28T01:57:11.344345" 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-07-28T01:57:11.345151" elapsed="0.000183"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:11.342992" 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-07-28T01:57:11.345842" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.345595" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.345580" elapsed="0.000508"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.346608" 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-07-28T01:57:11.346231" elapsed="0.000403"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.347389" 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-07-28T01:57:11.346789" 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-07-28T01:57:11.347587" elapsed="0.000183"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:11.345548" 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-07-28T01:57:11.348226" elapsed="0.000196"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.347988" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.347974" elapsed="0.000526"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.348995" 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-07-28T01:57:11.348646" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.349794" 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-07-28T01:57:11.349176" 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-07-28T01:57:11.350013" elapsed="0.000186"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:11.347943" 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-07-28T01:57:11.350674" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.350419" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.350404" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.351417" 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-07-28T01:57:11.351062" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.352219" 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-07-28T01:57:11.351615" 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-07-28T01:57:11.352426" elapsed="0.000201"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:11.350373" 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-07-28T01:57:11.353084" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.352846" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.352832" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.353841" 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-07-28T01:57:11.353489" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.354645" 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-07-28T01:57:11.354022" 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-07-28T01:57:11.354827" elapsed="0.000182"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:11.352801" 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-07-28T01:57:11.355478" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.355228" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.355212" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.356212" 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-07-28T01:57:11.355866" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.357042" 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-07-28T01:57:11.356420" 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-07-28T01:57:11.357227" elapsed="0.000180"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:11.355181" 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-07-28T01:57:11.357876" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.357639" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.357624" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.358623" 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-07-28T01:57:11.358261" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.359397" 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-07-28T01:57:11.358802" 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-07-28T01:57:11.359594" elapsed="0.000181"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:11.357594" 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-07-28T01:57:11.360361" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.360099" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.359975" elapsed="0.000654"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.361125" 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-07-28T01:57:11.360773" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.361969" 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-07-28T01:57:11.361344" 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-07-28T01:57:11.362152" elapsed="0.000183"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:11.359944" elapsed="0.002428"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.362805" elapsed="0.000220"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.362568" elapsed="0.000496"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.362553" elapsed="0.000535"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.363600" 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-07-28T01:57:11.363232" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.364407" 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-07-28T01:57:11.363782" 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-07-28T01:57:11.364608" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:11.362522" 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-07-28T01:57:11.365245" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.365007" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.364993" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.366027" 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-07-28T01:57:11.365647" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.366826" 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-07-28T01:57:11.366208" 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-07-28T01:57:11.367009" elapsed="0.000182"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:11.364962" 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-07-28T01:57:11.367661" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.367408" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.367394" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.368409" 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-07-28T01:57:11.368048" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.369205" 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-07-28T01:57:11.368607" 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-07-28T01:57:11.369388" elapsed="0.000203"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:11.367363" 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-07-28T01:57:11.370048" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.369810" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.369794" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.370802" 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-07-28T01:57:11.370434" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.371592" 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-07-28T01:57:11.370981" 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-07-28T01:57:11.371773" elapsed="0.000180"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:11.369763" 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-07-28T01:57:11.372446" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.372194" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.372179" elapsed="0.000562"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.373237" 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-07-28T01:57:11.372887" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.374034" 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-07-28T01:57:11.373419" 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-07-28T01:57:11.374219" elapsed="0.000182"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:11.372145" 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-07-28T01:57:11.374871" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.374635" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.374620" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.375639" 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-07-28T01:57:11.375258" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.376478" 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-07-28T01:57:11.375822" 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-07-28T01:57:11.376670" elapsed="0.000182"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:11.374589" 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-07-28T01:57:11.377418" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.377175" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.377051" elapsed="0.000634"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.378207" 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-07-28T01:57:11.377829" elapsed="0.000404"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.379017" 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-07-28T01:57:11.378396" 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-07-28T01:57:11.379202" elapsed="0.000182"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:11.377021" 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-07-28T01:57:11.379854" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.379616" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.379602" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.380623" 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-07-28T01:57:11.380242" elapsed="0.000407"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.381519" 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-07-28T01:57:11.380905" 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-07-28T01:57:11.381704" elapsed="0.000181"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:11.379571" elapsed="0.002351"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:11.135478" elapsed="0.246475"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.383222" 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-07-28T01:57:11.382106" elapsed="0.001144"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.383308" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:11.383481" 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-07-28T01:57:11.081066" elapsed="0.302443"/>
</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-07-28T01:57:11.384825" 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-07-28T01:57:11.384590" elapsed="0.000300">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-07-28T01:57:11.384983" 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-07-28T01:57:11.384220" elapsed="0.000787"/>
</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-07-28T01:57:11.385323" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.385078" elapsed="0.000302"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.385892" 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-07-28T01:57:11.385603" elapsed="0.000315"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.385404" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.385060" elapsed="0.000915"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.388334" 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-07-28T01:57:11.386127" elapsed="0.002238"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:11.388416" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.388589" 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-07-28T01:57:11.383887" elapsed="0.004727"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.390212" 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-07-28T01:57:11.389960" elapsed="0.000297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.390706" 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-07-28T01:57:11.390446" elapsed="0.000943"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.391809" 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-07-28T01:57:11.391560" elapsed="0.000293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.392244" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.392005" elapsed="0.000301"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:11.393133" 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-07-28T01:57:11.392938" elapsed="0.000221"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:11.393497" 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-07-28T01:57:11.393310" elapsed="0.000214"/>
</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-07-28T01:57:11.393673" elapsed="0.000188"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.394261" 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-07-28T01:57:11.394016" elapsed="0.000288"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:11.394345" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.394516" 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-07-28T01:57:11.392528" elapsed="0.002014"/>
</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-07-28T01:57:11.427090" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:11.427433" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A2/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:57:11.427703" 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-07-28T01:57:11.397176" elapsed="0.030587"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.395118" elapsed="0.032748"/>
</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-07-28T01:57:11.428293" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.427923" elapsed="0.000522"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.394595" elapsed="0.033930"/>
</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-07-28T01:57:11.435881" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.430854" elapsed="0.005123"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.430323" elapsed="0.005731"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.430282" elapsed="0.005828"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.439318" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.436819" elapsed="0.002545"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.436235" elapsed="0.003163"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.436197" elapsed="0.003225"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.439989" 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-07-28T01:57:11.439616" elapsed="0.000400"/>
</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-07-28T01:57:11.440358" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.440086" elapsed="0.000330"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.440934" 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-07-28T01:57:11.440634" elapsed="0.000326"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.440440" elapsed="0.000556"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.440068" elapsed="0.000950"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.441567" 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-07-28T01:57:11.441190" elapsed="0.000404"/>
</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-07-28T01:57:11.441911" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.441663" elapsed="0.000305"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.442478" 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-07-28T01:57:11.442165" elapsed="0.000340"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.441991" elapsed="0.000549"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.441645" elapsed="0.000916"/>
</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-07-28T01:57:11.442712" elapsed="0.000343"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:11.443509" 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-07-28T01:57:11.443218" elapsed="0.000318"/>
</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-07-28T01:57:11.443690" 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-07-28T01:57:11.429314" elapsed="0.016643"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.446134" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:11.446029" elapsed="0.000149"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.446011" elapsed="0.000190"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:11.448676" 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-07-28T01:57:11.446347" elapsed="0.002355"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:11.448750" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:11.448906" 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-07-28T01:57:11.388937" elapsed="0.059994"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.449064" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.449221" 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-07-28T01:57:10.996029" elapsed="0.453216"/>
</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-07-28T01:57:11.449603" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.449353" elapsed="0.000320"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.449336" elapsed="0.000360"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.449729" 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-07-28T01:57:10.993514" elapsed="0.456337"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:10.981997" elapsed="0.467898"/>
</iter>
<iter>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.450549" 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-07-28T01:57:11.450134" elapsed="0.000442"/>
</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-07-28T01:57:11.492874" 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-07-28T01:57:11.492493" elapsed="0.000409"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.493664" 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-07-28T01:57:11.493435" elapsed="0.000294">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-07-28T01:57:11.493822" 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-07-28T01:57:11.493066" elapsed="0.000780"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.494434" 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-07-28T01:57:11.494010" elapsed="0.000467"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.494777" 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-07-28T01:57:11.494910" 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-07-28T01:57:11.494641" elapsed="0.000294"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.495336" 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-07-28T01:57:11.495090" elapsed="0.000291"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.496353" 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-07-28T01:57:11.496076" elapsed="0.000321"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.496837" 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-07-28T01:57:11.496574" elapsed="0.000289"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Convert To String" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.497569" 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-07-28T01:57:11.497214" elapsed="0.000381"/>
</kw>
<kw name="Percent_Encode_String" owner="TemplatedRequests">
<kw name="Replace String Using Regexp" owner="String">
<msg time="2026-07-28T01:57:11.498581" 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-07-28T01:57:11.498119" elapsed="0.000488"/>
</kw>
<return>
<value>${encoded}</value>
<status status="PASS" start="2026-07-28T01:57:11.498692" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:11.498848" 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-07-28T01:57:11.497780" elapsed="0.001093"/>
</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-07-28T01:57:11.499026" elapsed="0.000271"/>
</kw>
<var name="${key}">NODE</var>
<var name="${value}">openflow:3</var>
<status status="PASS" start="2026-07-28T01:57:11.497080" elapsed="0.002259"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="PASS" start="2026-07-28T01:57:11.496913" elapsed="0.002461"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:11.499417" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:11.499593" level="INFO">${mapping_to_use} = {'NODE': 'openflow%3A3'}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:11.495752" elapsed="0.003867"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.495448" elapsed="0.004203"/>
</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-07-28T01:57:11.499829" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.499676" elapsed="0.000209"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.495429" elapsed="0.004477"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.500601" 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-07-28T01:57:11.500049" elapsed="0.000580"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.500677" 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-07-28T01:57:11.491839" elapsed="0.008962"/>
</kw>
<msg time="2026-07-28T01:57:11.500855" 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-07-28T01:57:11.479565" elapsed="0.021338"/>
</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-07-28T01:57:11.513239" 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-07-28T01:57:11.525342" 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-07-28T01:57:11.537628" 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-07-28T01:57:11.537825" 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-07-28T01:57:11.538001" 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-07-28T01:57:11.538365" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.538218" elapsed="0.000201"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:11.538205" 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-07-28T01:57:11.538599" 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-07-28T01:57:11.538806" 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-07-28T01:57:11.538975" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:11.538177" elapsed="0.000851"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.538076" elapsed="0.000978"/>
</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-07-28T01:57:11.539246" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.539329" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:57:11.539471" 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-07-28T01:57:11.475398" elapsed="0.064101"/>
</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-07-28T01:57:11.550129" elapsed="0.000349"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.563392" 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-07-28T01:57:11.563018" elapsed="0.000402"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.564139" 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-07-28T01:57:11.563933" elapsed="0.000280">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-07-28T01:57:11.564306" 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-07-28T01:57:11.563599" elapsed="0.000731"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.564892" 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-07-28T01:57:11.564508" elapsed="0.000411"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.565220" 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-07-28T01:57:11.565344" 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-07-28T01:57:11.565081" elapsed="0.000288"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.565783" level="INFO">{
  "flow": [
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.565540" elapsed="0.000287"/>
</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-07-28T01:57:11.566182" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.565892" elapsed="0.000347"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.566720" 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-07-28T01:57:11.566412" elapsed="0.000335"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.566263" elapsed="0.000518"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.565875" elapsed="0.000928"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.567371" 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-07-28T01:57:11.566949" elapsed="0.000449"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.567445" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:57:11.567613" 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-07-28T01:57:11.562389" elapsed="0.005249"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.580926" 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-07-28T01:57:11.580551" elapsed="0.000404"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.581672" 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-07-28T01:57:11.581465" elapsed="0.000270">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-07-28T01:57:11.581827" 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-07-28T01:57:11.581115" elapsed="0.000737"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.582437" 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-07-28T01:57:11.582044" elapsed="0.000435"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.582777" 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-07-28T01:57:11.582898" 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-07-28T01:57:11.582643" elapsed="0.000280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.583321" level="INFO">  ]
}
</msg>
<arg>${template}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.583079" elapsed="0.000285"/>
</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-07-28T01:57:11.583734" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.583430" elapsed="0.000361"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.584269" 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-07-28T01:57:11.583962" elapsed="0.000333"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.583816" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.583412" elapsed="0.000940"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.584956" 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-07-28T01:57:11.584513" elapsed="0.000469"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.585031" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.585185" 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-07-28T01:57:11.579891" elapsed="0.005321"/>
</kw>
<kw name="Resolve_Text_From_Template_File" owner="TemplatedRequests">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.598675" 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-07-28T01:57:11.598289" elapsed="0.000414"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.599394" 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-07-28T01:57:11.599192" elapsed="0.000279">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-07-28T01:57:11.599566" 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-07-28T01:57:11.598862" elapsed="0.000728"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.600137" 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-07-28T01:57:11.599752" elapsed="0.000467"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:11.600547" 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-07-28T01:57:11.600705" 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-07-28T01:57:11.600388" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.601136" 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-07-28T01:57:11.600891" elapsed="0.000294"/>
</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-07-28T01:57:11.601559" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.601252" elapsed="0.000366"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.602123" 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-07-28T01:57:11.601791" elapsed="0.000358"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.601643" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.601234" elapsed="0.000973"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.602970" 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-07-28T01:57:11.602357" elapsed="0.000642"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.603048" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.603203" 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-07-28T01:57:11.597748" elapsed="0.005481"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.603654" level="INFO">${items} = []</msg>
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-07-28T01:57:11.603393" elapsed="0.000287"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.604230" 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-07-28T01:57:11.603839" elapsed="0.000417"/>
</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-07-28T01:57:11.604937" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.604695" elapsed="0.000300"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.604678" elapsed="0.000341"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.605564" 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-07-28T01:57:11.605195" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.606531" 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-07-28T01:57:11.605746" elapsed="0.000814"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.606719" elapsed="0.000188"/>
</kw>
<var name="${iteration}">1</var>
<status status="PASS" start="2026-07-28T01:57:11.604610" 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-07-28T01:57:11.607365" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.607127" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.607112" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.608126" 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-07-28T01:57:11.607775" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.608949" 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-07-28T01:57:11.608327" 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-07-28T01:57:11.609134" elapsed="0.000183"/>
</kw>
<var name="${iteration}">2</var>
<status status="PASS" start="2026-07-28T01:57:11.607081" 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-07-28T01:57:11.609829" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.609588" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.609573" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.610583" 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-07-28T01:57:11.610218" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.611366" 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-07-28T01:57:11.610766" 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-07-28T01:57:11.611567" elapsed="0.000184"/>
</kw>
<var name="${iteration}">3</var>
<status status="PASS" start="2026-07-28T01:57:11.609541" 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-07-28T01:57:11.612226" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.611971" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.611956" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.612985" 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-07-28T01:57:11.612635" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.613782" 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-07-28T01:57:11.613166" 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-07-28T01:57:11.613966" elapsed="0.000181"/>
</kw>
<var name="${iteration}">4</var>
<status status="PASS" start="2026-07-28T01:57:11.611925" 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-07-28T01:57:11.614618" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.614364" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.614349" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.615357" 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-07-28T01:57:11.615006" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.616174" 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-07-28T01:57:11.615552" 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-07-28T01:57:11.616360" elapsed="0.000202"/>
</kw>
<var name="${iteration}">5</var>
<status status="PASS" start="2026-07-28T01:57:11.614319" 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-07-28T01:57:11.617015" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.616778" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.616764" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.617765" 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-07-28T01:57:11.617401" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.618557" 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-07-28T01:57:11.617944" 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-07-28T01:57:11.618739" elapsed="0.000180"/>
</kw>
<var name="${iteration}">6</var>
<status status="PASS" start="2026-07-28T01:57:11.616733" 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-07-28T01:57:11.619370" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.619133" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.619118" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.620118" 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-07-28T01:57:11.619773" elapsed="0.000371"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.620922" 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-07-28T01:57:11.620311" 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-07-28T01:57:11.621139" elapsed="0.000182"/>
</kw>
<var name="${iteration}">7</var>
<status status="PASS" start="2026-07-28T01:57:11.619088" 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-07-28T01:57:11.621797" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.621557" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.621542" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.622551" 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-07-28T01:57:11.622184" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.623472" 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-07-28T01:57:11.622734" elapsed="0.000768"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.623659" elapsed="0.000184"/>
</kw>
<var name="${iteration}">8</var>
<status status="PASS" start="2026-07-28T01:57:11.621510" elapsed="0.002371"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.624343" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.624088" elapsed="0.000500"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.624074" elapsed="0.000538"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.625107" 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-07-28T01:57:11.624757" elapsed="0.000410"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.625944" 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-07-28T01:57:11.625326" 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-07-28T01:57:11.626129" elapsed="0.000179"/>
</kw>
<var name="${iteration}">9</var>
<status status="PASS" start="2026-07-28T01:57:11.624041" 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-07-28T01:57:11.626781" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.626542" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.626527" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.627532" 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-07-28T01:57:11.627169" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.628374" 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-07-28T01:57:11.627714" elapsed="0.000688"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.628574" elapsed="0.000186"/>
</kw>
<var name="${iteration}">10</var>
<status status="PASS" start="2026-07-28T01:57:11.626495" 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-07-28T01:57:11.629214" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.628977" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.628962" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.629973" 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-07-28T01:57:11.629618" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.630763" 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-07-28T01:57:11.630152" 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-07-28T01:57:11.630946" elapsed="0.000180"/>
</kw>
<var name="${iteration}">11</var>
<status status="PASS" start="2026-07-28T01:57:11.628932" 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-07-28T01:57:11.631593" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.631341" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.631327" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.632344" 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-07-28T01:57:11.631980" elapsed="0.000423"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.633192" 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-07-28T01:57:11.632582" 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-07-28T01:57:11.633379" elapsed="0.000200"/>
</kw>
<var name="${iteration}">12</var>
<status status="PASS" start="2026-07-28T01:57:11.631296" 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-07-28T01:57:11.634039" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.633800" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.633786" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.634797" 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-07-28T01:57:11.634430" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.635593" 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-07-28T01:57:11.634980" 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-07-28T01:57:11.635777" elapsed="0.000181"/>
</kw>
<var name="${iteration}">13</var>
<status status="PASS" start="2026-07-28T01:57:11.633754" 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-07-28T01:57:11.636428" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.636190" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.636175" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.637184" 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-07-28T01:57:11.636834" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.637979" 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-07-28T01:57:11.637364" 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-07-28T01:57:11.638162" elapsed="0.000179"/>
</kw>
<var name="${iteration}">14</var>
<status status="PASS" start="2026-07-28T01:57:11.636132" 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-07-28T01:57:11.638818" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.638578" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.638561" elapsed="0.000501"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.639692" 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-07-28T01:57:11.639205" elapsed="0.000513"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.640516" 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-07-28T01:57:11.639874" 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-07-28T01:57:11.640702" elapsed="0.000181"/>
</kw>
<var name="${iteration}">15</var>
<status status="PASS" start="2026-07-28T01:57:11.638530" 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-07-28T01:57:11.641336" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.641099" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.641084" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.642093" 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-07-28T01:57:11.641744" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.642886" 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-07-28T01:57:11.642273" 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-07-28T01:57:11.643070" elapsed="0.000181"/>
</kw>
<var name="${iteration}">16</var>
<status status="PASS" start="2026-07-28T01:57:11.641054" 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-07-28T01:57:11.643762" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.643484" elapsed="0.000501"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.643467" elapsed="0.000543"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.644540" 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-07-28T01:57:11.644166" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.645322" 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-07-28T01:57:11.644722" 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-07-28T01:57:11.645521" elapsed="0.000184"/>
</kw>
<var name="${iteration}">17</var>
<status status="PASS" start="2026-07-28T01:57:11.643423" 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-07-28T01:57:11.646160" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.645925" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.645910" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.646920" 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-07-28T01:57:11.646564" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.647720" 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-07-28T01:57:11.647099" 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-07-28T01:57:11.647904" elapsed="0.000182"/>
</kw>
<var name="${iteration}">18</var>
<status status="PASS" start="2026-07-28T01:57:11.645880" 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-07-28T01:57:11.648576" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.648322" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.648304" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.649312" 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-07-28T01:57:11.648964" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.650103" 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-07-28T01:57:11.649506" 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-07-28T01:57:11.650286" elapsed="0.000197"/>
</kw>
<var name="${iteration}">19</var>
<status status="PASS" start="2026-07-28T01:57:11.648273" 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-07-28T01:57:11.650939" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.650702" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.650688" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.651685" 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-07-28T01:57:11.651322" elapsed="0.000389"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.652498" 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-07-28T01:57:11.651864" 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-07-28T01:57:11.652681" elapsed="0.000182"/>
</kw>
<var name="${iteration}">20</var>
<status status="PASS" start="2026-07-28T01:57:11.650657" 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-07-28T01:57:11.653325" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.653083" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.653066" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.654079" 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-07-28T01:57:11.653731" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.654872" 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-07-28T01:57:11.654258" 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-07-28T01:57:11.655089" elapsed="0.000184"/>
</kw>
<var name="${iteration}">21</var>
<status status="PASS" start="2026-07-28T01:57:11.653034" 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-07-28T01:57:11.655748" elapsed="0.000300"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.655509" elapsed="0.000579"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.655493" elapsed="0.000619"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.657043" 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-07-28T01:57:11.656364" elapsed="0.000706"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.657847" 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-07-28T01:57:11.657227" 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-07-28T01:57:11.658032" elapsed="0.000184"/>
</kw>
<var name="${iteration}">22</var>
<status status="PASS" start="2026-07-28T01:57:11.655446" elapsed="0.002807"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.658688" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.658432" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.658418" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.659424" 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-07-28T01:57:11.659076" elapsed="0.000387"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.660235" 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-07-28T01:57:11.659620" 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-07-28T01:57:11.660424" elapsed="0.000199"/>
</kw>
<var name="${iteration}">23</var>
<status status="PASS" start="2026-07-28T01:57:11.658387" 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-07-28T01:57:11.661076" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.660841" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.660826" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.661869" 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-07-28T01:57:11.661478" elapsed="0.000418"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.662673" 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-07-28T01:57:11.662052" 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-07-28T01:57:11.662855" elapsed="0.000182"/>
</kw>
<var name="${iteration}">24</var>
<status status="PASS" start="2026-07-28T01:57:11.660796" 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-07-28T01:57:11.663511" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.663255" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.663240" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.664282" 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-07-28T01:57:11.663899" elapsed="0.000409"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.665081" 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-07-28T01:57:11.664480" 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-07-28T01:57:11.665265" elapsed="0.000181"/>
</kw>
<var name="${iteration}">25</var>
<status status="PASS" start="2026-07-28T01:57:11.663209" 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-07-28T01:57:11.665953" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.665681" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.665667" elapsed="0.000544"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.666758" 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-07-28T01:57:11.666385" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.667600" 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-07-28T01:57:11.666974" 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-07-28T01:57:11.667786" elapsed="0.000184"/>
</kw>
<var name="${iteration}">26</var>
<status status="PASS" start="2026-07-28T01:57:11.665636" elapsed="0.002371"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.668466" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.668210" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.668194" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.669209" 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-07-28T01:57:11.668859" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.670005" 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-07-28T01:57:11.669392" 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-07-28T01:57:11.670188" elapsed="0.000181"/>
</kw>
<var name="${iteration}">27</var>
<status status="PASS" start="2026-07-28T01:57:11.668162" 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-07-28T01:57:11.670840" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.670604" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.670589" elapsed="0.000495"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.671586" 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-07-28T01:57:11.671224" elapsed="0.000388"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.672377" 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-07-28T01:57:11.671764" 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-07-28T01:57:11.672575" elapsed="0.000183"/>
</kw>
<var name="${iteration}">28</var>
<status status="PASS" start="2026-07-28T01:57:11.670559" 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-07-28T01:57:11.673329" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.672977" elapsed="0.000592"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.672962" elapsed="0.000632"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.674089" 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-07-28T01:57:11.673740" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.674883" 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-07-28T01:57:11.674271" 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-07-28T01:57:11.675066" elapsed="0.000182"/>
</kw>
<var name="${iteration}">29</var>
<status status="PASS" start="2026-07-28T01:57:11.672931" elapsed="0.002354"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.675720" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.675482" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.675465" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.676505" 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-07-28T01:57:11.676106" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.677287" 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-07-28T01:57:11.676687" 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-07-28T01:57:11.677485" elapsed="0.000183"/>
</kw>
<var name="${iteration}">30</var>
<status status="PASS" start="2026-07-28T01:57:11.675421" 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-07-28T01:57:11.678124" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.677887" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.677872" elapsed="0.000529"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.678915" 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-07-28T01:57:11.678562" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.679787" 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-07-28T01:57:11.679123" 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-07-28T01:57:11.679973" elapsed="0.000198"/>
</kw>
<var name="${iteration}">31</var>
<status status="PASS" start="2026-07-28T01:57:11.677841" 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-07-28T01:57:11.680651" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.680396" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.680381" elapsed="0.000518"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.681392" 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-07-28T01:57:11.681042" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.682188" 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-07-28T01:57:11.681587" 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-07-28T01:57:11.682371" elapsed="0.000200"/>
</kw>
<var name="${iteration}">32</var>
<status status="PASS" start="2026-07-28T01:57:11.680350" 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-07-28T01:57:11.683025" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.682789" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.682775" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.683774" 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-07-28T01:57:11.683409" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.684577" 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-07-28T01:57:11.683953" 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-07-28T01:57:11.684760" elapsed="0.000181"/>
</kw>
<var name="${iteration}">33</var>
<status status="PASS" start="2026-07-28T01:57:11.682744" 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-07-28T01:57:11.685392" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.685157" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.685142" elapsed="0.000511"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.686141" 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-07-28T01:57:11.685794" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.686938" 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-07-28T01:57:11.686324" 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-07-28T01:57:11.687121" elapsed="0.000180"/>
</kw>
<var name="${iteration}">34</var>
<status status="PASS" start="2026-07-28T01:57:11.685112" 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-07-28T01:57:11.687771" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.687536" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.687520" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.688554" 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-07-28T01:57:11.688181" elapsed="0.000399"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.689357" 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-07-28T01:57:11.688735" 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-07-28T01:57:11.689564" elapsed="0.000184"/>
</kw>
<var name="${iteration}">35</var>
<status status="PASS" start="2026-07-28T01:57:11.687488" 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-07-28T01:57:11.690353" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.690108" elapsed="0.000490"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.689986" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.691122" 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-07-28T01:57:11.690766" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.691947" 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-07-28T01:57:11.691303" elapsed="0.000672"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.692149" elapsed="0.000186"/>
</kw>
<var name="${iteration}">36</var>
<status status="PASS" start="2026-07-28T01:57:11.689955" 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-07-28T01:57:11.692813" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.692575" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.692560" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.693564" 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-07-28T01:57:11.693200" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.694340" 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-07-28T01:57:11.693745" 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-07-28T01:57:11.694538" elapsed="0.000181"/>
</kw>
<var name="${iteration}">37</var>
<status status="PASS" start="2026-07-28T01:57:11.692529" 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-07-28T01:57:11.695172" elapsed="0.000180"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.694936" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.694922" elapsed="0.000492"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.695919" 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-07-28T01:57:11.695572" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.696729" 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-07-28T01:57:11.696098" 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-07-28T01:57:11.696911" elapsed="0.000180"/>
</kw>
<var name="${iteration}">38</var>
<status status="PASS" start="2026-07-28T01:57:11.694891" 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-07-28T01:57:11.697560" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.697308" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.697293" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.698295" 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-07-28T01:57:11.697949" elapsed="0.000372"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.699086" 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-07-28T01:57:11.698490" 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-07-28T01:57:11.699269" elapsed="0.000194"/>
</kw>
<var name="${iteration}">39</var>
<status status="PASS" start="2026-07-28T01:57:11.697263" 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-07-28T01:57:11.699919" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.699683" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.699668" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.700696" 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-07-28T01:57:11.700330" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.701484" 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-07-28T01:57:11.700875" 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-07-28T01:57:11.701704" elapsed="0.000184"/>
</kw>
<var name="${iteration}">40</var>
<status status="PASS" start="2026-07-28T01:57:11.699638" 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-07-28T01:57:11.702345" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.702106" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.702092" elapsed="0.000548"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.703142" 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-07-28T01:57:11.702789" elapsed="0.000379"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.703972" 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-07-28T01:57:11.703322" elapsed="0.000679"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.704171" elapsed="0.000183"/>
</kw>
<var name="${iteration}">41</var>
<status status="PASS" start="2026-07-28T01:57:11.702061" 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-07-28T01:57:11.704828" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.704591" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.704577" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.705585" 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-07-28T01:57:11.705213" elapsed="0.000398"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.706360" 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-07-28T01:57:11.705764" 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-07-28T01:57:11.706558" elapsed="0.000183"/>
</kw>
<var name="${iteration}">42</var>
<status status="PASS" start="2026-07-28T01:57:11.704546" 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-07-28T01:57:11.707309" elapsed="0.000234"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.707067" elapsed="0.000516"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.706943" elapsed="0.000664"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.708103" 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-07-28T01:57:11.707753" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.708918" 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-07-28T01:57:11.708301" 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-07-28T01:57:11.709100" elapsed="0.000179"/>
</kw>
<var name="${iteration}">43</var>
<status status="PASS" start="2026-07-28T01:57:11.706912" elapsed="0.002404"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.709749" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.709512" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.709497" elapsed="0.000494"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.710527" 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-07-28T01:57:11.710132" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.711311" 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-07-28T01:57:11.710712" 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-07-28T01:57:11.711507" elapsed="0.000183"/>
</kw>
<var name="${iteration}">44</var>
<status status="PASS" start="2026-07-28T01:57:11.709464" 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-07-28T01:57:11.712169" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.711907" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.711893" elapsed="0.000523"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.712928" 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-07-28T01:57:11.712575" elapsed="0.000411"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.713765" 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-07-28T01:57:11.713146" 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-07-28T01:57:11.713948" elapsed="0.000180"/>
</kw>
<var name="${iteration}">45</var>
<status status="PASS" start="2026-07-28T01:57:11.711862" 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-07-28T01:57:11.714596" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.714344" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.714329" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.715335" 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-07-28T01:57:11.714984" elapsed="0.000378"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.716146" 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-07-28T01:57:11.715531" 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-07-28T01:57:11.716332" elapsed="0.000199"/>
</kw>
<var name="${iteration}">46</var>
<status status="PASS" start="2026-07-28T01:57:11.714299" 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-07-28T01:57:11.716987" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.716748" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.716734" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.717741" 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-07-28T01:57:11.717375" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.718537" 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-07-28T01:57:11.717922" 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-07-28T01:57:11.718720" elapsed="0.000181"/>
</kw>
<var name="${iteration}">47</var>
<status status="PASS" start="2026-07-28T01:57:11.716703" 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-07-28T01:57:11.719353" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.719118" elapsed="0.000471"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.719104" elapsed="0.000509"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.720179" 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-07-28T01:57:11.719756" elapsed="0.000451"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.721419" 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-07-28T01:57:11.720713" elapsed="0.000735"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.721622" elapsed="0.000182"/>
</kw>
<var name="${iteration}">48</var>
<status status="PASS" start="2026-07-28T01:57:11.719073" elapsed="0.002769"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.722257" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.722021" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.722005" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.723049" 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-07-28T01:57:11.722699" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.723851" 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-07-28T01:57:11.723229" 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-07-28T01:57:11.724033" elapsed="0.000209"/>
</kw>
<var name="${iteration}">49</var>
<status status="PASS" start="2026-07-28T01:57:11.721975" 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-07-28T01:57:11.724869" elapsed="0.000223"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.724588" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.724445" elapsed="0.000711"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.725674" 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-07-28T01:57:11.725303" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.726476" 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-07-28T01:57:11.725856" 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-07-28T01:57:11.726661" elapsed="0.000184"/>
</kw>
<var name="${iteration}">50</var>
<status status="PASS" start="2026-07-28T01:57:11.724414" elapsed="0.002469"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.727306" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.727064" elapsed="0.000478"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.727049" elapsed="0.000517"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.728055" 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-07-28T01:57:11.727707" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.728914" 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-07-28T01:57:11.728258" elapsed="0.000685"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.729100" elapsed="0.000188"/>
</kw>
<var name="${iteration}">51</var>
<status status="PASS" start="2026-07-28T01:57:11.727018" 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-07-28T01:57:11.729760" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.729523" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.729508" elapsed="0.000539"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.730570" 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-07-28T01:57:11.730196" elapsed="0.000401"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.731352" 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-07-28T01:57:11.730752" 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-07-28T01:57:11.731550" elapsed="0.000222"/>
</kw>
<var name="${iteration}">52</var>
<status status="PASS" start="2026-07-28T01:57:11.729475" 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-07-28T01:57:11.732246" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.731990" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.731976" elapsed="0.000532"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.733001" 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-07-28T01:57:11.732652" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.733792" 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-07-28T01:57:11.733180" 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-07-28T01:57:11.733974" elapsed="0.000181"/>
</kw>
<var name="${iteration}">53</var>
<status status="PASS" start="2026-07-28T01:57:11.731945" 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-07-28T01:57:11.734623" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.734369" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.734355" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.735364" 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-07-28T01:57:11.735014" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.736182" 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-07-28T01:57:11.735559" 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-07-28T01:57:11.736405" elapsed="0.000201"/>
</kw>
<var name="${iteration}">54</var>
<status status="PASS" start="2026-07-28T01:57:11.734325" 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-07-28T01:57:11.737060" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.736822" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.736808" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.737811" 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-07-28T01:57:11.737446" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.738629" 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-07-28T01:57:11.737992" 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-07-28T01:57:11.738823" elapsed="0.000184"/>
</kw>
<var name="${iteration}">55</var>
<status status="PASS" start="2026-07-28T01:57:11.736777" 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-07-28T01:57:11.739477" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.739225" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.739210" elapsed="0.000513"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.740231" 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-07-28T01:57:11.739866" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.741028" 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-07-28T01:57:11.740410" 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-07-28T01:57:11.741210" elapsed="0.000182"/>
</kw>
<var name="${iteration}">56</var>
<status status="PASS" start="2026-07-28T01:57:11.739180" 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-07-28T01:57:11.742482" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.742220" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.741617" elapsed="0.001120"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.743236" 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-07-28T01:57:11.742882" elapsed="0.000381"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.744041" 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-07-28T01:57:11.743418" 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-07-28T01:57:11.744250" elapsed="0.000186"/>
</kw>
<var name="${iteration}">57</var>
<status status="PASS" start="2026-07-28T01:57:11.741585" elapsed="0.002906"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.744913" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.744675" elapsed="0.000460"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.744660" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.745668" 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-07-28T01:57:11.745302" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.746447" 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-07-28T01:57:11.745849" 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-07-28T01:57:11.746646" elapsed="0.000181"/>
</kw>
<var name="${iteration}">58</var>
<status status="PASS" start="2026-07-28T01:57:11.744629" 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-07-28T01:57:11.747311" elapsed="0.000198"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.747072" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.747057" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.748061" 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-07-28T01:57:11.747713" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.748964" 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-07-28T01:57:11.748335" 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-07-28T01:57:11.749148" elapsed="0.000184"/>
</kw>
<var name="${iteration}">59</var>
<status status="PASS" start="2026-07-28T01:57:11.747025" 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-07-28T01:57:11.749808" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.749570" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.749555" elapsed="0.000499"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.750563" 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-07-28T01:57:11.750196" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.751344" 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-07-28T01:57:11.750743" 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-07-28T01:57:11.751541" elapsed="0.000222"/>
</kw>
<var name="${iteration}">60</var>
<status status="PASS" start="2026-07-28T01:57:11.749524" 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-07-28T01:57:11.752238" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.751983" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.751968" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.753015" 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-07-28T01:57:11.752658" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.753816" 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-07-28T01:57:11.753196" 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-07-28T01:57:11.754000" elapsed="0.000183"/>
</kw>
<var name="${iteration}">61</var>
<status status="PASS" start="2026-07-28T01:57:11.751937" 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-07-28T01:57:11.754658" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.754402" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.754387" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.755435" 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-07-28T01:57:11.755045" elapsed="0.000432"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.756256" 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-07-28T01:57:11.755635" 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-07-28T01:57:11.756440" elapsed="0.000208"/>
</kw>
<var name="${iteration}">62</var>
<status status="PASS" start="2026-07-28T01:57:11.754357" elapsed="0.002329"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.757106" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.756868" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.756854" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.757863" 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-07-28T01:57:11.757512" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.758664" 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-07-28T01:57:11.758044" 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-07-28T01:57:11.758849" elapsed="0.000183"/>
</kw>
<var name="${iteration}">63</var>
<status status="PASS" start="2026-07-28T01:57:11.756823" 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-07-28T01:57:11.759630" elapsed="0.000188"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.759368" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.759237" elapsed="0.000692"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.760474" 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-07-28T01:57:11.760076" elapsed="0.000426"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.761285" 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-07-28T01:57:11.760659" elapsed="0.000691"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.761526" elapsed="0.000187"/>
</kw>
<var name="${iteration}">64</var>
<status status="PASS" start="2026-07-28T01:57:11.759207" elapsed="0.002545"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.762178" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.761937" elapsed="0.000498"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.761922" elapsed="0.000556"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.762982" 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-07-28T01:57:11.762627" elapsed="0.000382"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.763786" 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-07-28T01:57:11.763164" 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-07-28T01:57:11.763971" elapsed="0.000197"/>
</kw>
<var name="${iteration}">65</var>
<status status="PASS" start="2026-07-28T01:57:11.761891" 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-07-28T01:57:11.764648" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.764394" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.764379" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.765385" 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-07-28T01:57:11.765036" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.766188" 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-07-28T01:57:11.765582" 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-07-28T01:57:11.766370" elapsed="0.000199"/>
</kw>
<var name="${iteration}">66</var>
<status status="PASS" start="2026-07-28T01:57:11.764348" 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-07-28T01:57:11.767024" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.766787" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.766772" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.767777" 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-07-28T01:57:11.767411" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.768583" 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-07-28T01:57:11.767956" 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-07-28T01:57:11.768766" elapsed="0.000181"/>
</kw>
<var name="${iteration}">67</var>
<status status="PASS" start="2026-07-28T01:57:11.766742" 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-07-28T01:57:11.769402" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.769166" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.769150" elapsed="0.000515"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.770155" 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-07-28T01:57:11.769807" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.770988" 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-07-28T01:57:11.770336" 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-07-28T01:57:11.771171" elapsed="0.000187"/>
</kw>
<var name="${iteration}">68</var>
<status status="PASS" start="2026-07-28T01:57:11.769119" 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-07-28T01:57:11.771875" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.771633" elapsed="0.000489"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.771618" elapsed="0.000530"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.772684" 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-07-28T01:57:11.772309" elapsed="0.000402"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.773489" 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-07-28T01:57:11.772868" 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-07-28T01:57:11.773676" elapsed="0.000183"/>
</kw>
<var name="${iteration}">69</var>
<status status="PASS" start="2026-07-28T01:57:11.771586" elapsed="0.002311"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.774319" elapsed="0.000202"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.774080" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.774065" elapsed="0.000519"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.775082" 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-07-28T01:57:11.774728" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.775918" 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-07-28T01:57:11.775263" elapsed="0.000683"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.776118" elapsed="0.000191"/>
</kw>
<var name="${iteration}">70</var>
<status status="PASS" start="2026-07-28T01:57:11.774035" elapsed="0.002311"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.776948" elapsed="0.000191"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.776661" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.776532" elapsed="0.000671"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.777723" 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-07-28T01:57:11.777349" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.778527" 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-07-28T01:57:11.777906" 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-07-28T01:57:11.778714" elapsed="0.000185"/>
</kw>
<var name="${iteration}">71</var>
<status status="PASS" start="2026-07-28T01:57:11.776500" elapsed="0.002438"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.779362" elapsed="0.000201"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.779121" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.779106" elapsed="0.000521"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.780143" 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-07-28T01:57:11.779773" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.780949" 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-07-28T01:57:11.780326" 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-07-28T01:57:11.781134" elapsed="0.000183"/>
</kw>
<var name="${iteration}">72</var>
<status status="PASS" start="2026-07-28T01:57:11.779075" 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-07-28T01:57:11.781790" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.781553" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.781538" elapsed="0.000534"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.782587" 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-07-28T01:57:11.782218" elapsed="0.000396"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.783372" 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-07-28T01:57:11.782768" 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-07-28T01:57:11.783610" elapsed="0.000185"/>
</kw>
<var name="${iteration}">73</var>
<status status="PASS" start="2026-07-28T01:57:11.781507" elapsed="0.002325"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.784310" elapsed="0.000567"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.784011" elapsed="0.000906"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.783997" elapsed="0.000945"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.785511" 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-07-28T01:57:11.785130" elapsed="0.000408"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.786308" 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-07-28T01:57:11.785695" 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-07-28T01:57:11.786523" elapsed="0.000185"/>
</kw>
<var name="${iteration}">74</var>
<status status="PASS" start="2026-07-28T01:57:11.783966" elapsed="0.002780"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.787163" elapsed="0.000222"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.786926" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.786912" elapsed="0.000557"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.787974" 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-07-28T01:57:11.787618" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.788796" 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-07-28T01:57:11.788172" 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-07-28T01:57:11.788980" elapsed="0.000183"/>
</kw>
<var name="${iteration}">75</var>
<status status="PASS" start="2026-07-28T01:57:11.786881" 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-07-28T01:57:11.789651" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.789387" elapsed="0.000487"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.789371" elapsed="0.000527"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.790389" 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-07-28T01:57:11.790042" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.791191" 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-07-28T01:57:11.790585" 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-07-28T01:57:11.791371" elapsed="0.000198"/>
</kw>
<var name="${iteration}">76</var>
<status status="PASS" start="2026-07-28T01:57:11.789339" 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-07-28T01:57:11.792022" elapsed="0.000194"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.791785" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.791771" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.792790" 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-07-28T01:57:11.792426" elapsed="0.000390"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.793586" 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-07-28T01:57:11.792970" 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-07-28T01:57:11.793768" elapsed="0.000182"/>
</kw>
<var name="${iteration}">77</var>
<status status="PASS" start="2026-07-28T01:57:11.791741" 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-07-28T01:57:11.794538" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.794280" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.794150" elapsed="0.000637"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.795287" 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-07-28T01:57:11.794932" elapsed="0.000415"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.796206" 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-07-28T01:57:11.795558" elapsed="0.000676"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.796391" elapsed="0.000199"/>
</kw>
<var name="${iteration}">78</var>
<status status="PASS" start="2026-07-28T01:57:11.794119" elapsed="0.002509"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.797043" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.796807" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.796792" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.797799" 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-07-28T01:57:11.797432" elapsed="0.000393"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.798602" 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-07-28T01:57:11.797980" 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-07-28T01:57:11.798787" elapsed="0.000183"/>
</kw>
<var name="${iteration}">79</var>
<status status="PASS" start="2026-07-28T01:57:11.796762" 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-07-28T01:57:11.799425" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.799187" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.799172" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.800200" 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-07-28T01:57:11.799831" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.801005" 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-07-28T01:57:11.800381" 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-07-28T01:57:11.801190" elapsed="0.000186"/>
</kw>
<var name="${iteration}">80</var>
<status status="PASS" start="2026-07-28T01:57:11.799141" 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-07-28T01:57:11.801852" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.801612" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.801598" elapsed="0.000500"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.802609" 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-07-28T01:57:11.802243" elapsed="0.000392"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.803389" 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-07-28T01:57:11.802791" 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-07-28T01:57:11.803587" elapsed="0.000181"/>
</kw>
<var name="${iteration}">81</var>
<status status="PASS" start="2026-07-28T01:57:11.801566" 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-07-28T01:57:11.804267" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.803985" elapsed="0.000520"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.803969" elapsed="0.000561"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.805023" 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-07-28T01:57:11.804674" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.805822" 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-07-28T01:57:11.805201" elapsed="0.000672"/>
</kw>
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${item}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.806030" elapsed="0.000188"/>
</kw>
<var name="${iteration}">82</var>
<status status="PASS" start="2026-07-28T01:57:11.803939" 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-07-28T01:57:11.806744" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.806436" elapsed="0.000533"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.806419" elapsed="0.000577"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.807508" 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-07-28T01:57:11.807141" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.808312" 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-07-28T01:57:11.807691" 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-07-28T01:57:11.808512" elapsed="0.000188"/>
</kw>
<var name="${iteration}">83</var>
<status status="PASS" start="2026-07-28T01:57:11.806389" 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-07-28T01:57:11.809157" elapsed="0.000183"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.808920" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.808905" elapsed="0.000497"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.809909" 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-07-28T01:57:11.809560" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.810712" 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-07-28T01:57:11.810088" 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-07-28T01:57:11.810896" elapsed="0.000182"/>
</kw>
<var name="${iteration}">84</var>
<status status="PASS" start="2026-07-28T01:57:11.808874" 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-07-28T01:57:11.811670" elapsed="0.000210"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.811407" elapsed="0.000511"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.811282" elapsed="0.000661"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.812484" 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-07-28T01:57:11.812106" elapsed="0.000406"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.813274" 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-07-28T01:57:11.812668" 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-07-28T01:57:11.813473" elapsed="0.000186"/>
</kw>
<var name="${iteration}">85</var>
<status status="PASS" start="2026-07-28T01:57:11.811252" elapsed="0.002446"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.814119" elapsed="0.000186"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.813879" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.813864" elapsed="0.000503"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.814880" 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-07-28T01:57:11.814526" elapsed="0.000380"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.815679" 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-07-28T01:57:11.815062" 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-07-28T01:57:11.815863" elapsed="0.000181"/>
</kw>
<var name="${iteration}">86</var>
<status status="PASS" start="2026-07-28T01:57:11.813833" 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-07-28T01:57:11.816561" elapsed="0.000185"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.816300" elapsed="0.000484"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.816285" elapsed="0.000524"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.817301" 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-07-28T01:57:11.816954" elapsed="0.000374"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.818097" 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-07-28T01:57:11.817497" 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-07-28T01:57:11.818319" elapsed="0.000202"/>
</kw>
<var name="${iteration}">87</var>
<status status="PASS" start="2026-07-28T01:57:11.816255" 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-07-28T01:57:11.818980" elapsed="0.000182"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.818743" elapsed="0.000457"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.818728" elapsed="0.000496"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.819731" 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-07-28T01:57:11.819366" elapsed="0.000391"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.820546" 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-07-28T01:57:11.819912" 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-07-28T01:57:11.820731" elapsed="0.000181"/>
</kw>
<var name="${iteration}">88</var>
<status status="PASS" start="2026-07-28T01:57:11.818697" 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-07-28T01:57:11.821366" elapsed="0.000200"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.821131" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.821116" elapsed="0.000512"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.822122" 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-07-28T01:57:11.821772" elapsed="0.000376"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.822922" 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-07-28T01:57:11.822302" 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-07-28T01:57:11.823105" elapsed="0.000185"/>
</kw>
<var name="${iteration}">89</var>
<status status="PASS" start="2026-07-28T01:57:11.821086" 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-07-28T01:57:11.823792" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.823526" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.823510" elapsed="0.000533"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.824576" 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-07-28T01:57:11.824207" elapsed="0.000395"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.825363" 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-07-28T01:57:11.824757" 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-07-28T01:57:11.825562" elapsed="0.000183"/>
</kw>
<var name="${iteration}">90</var>
<status status="PASS" start="2026-07-28T01:57:11.823477" 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-07-28T01:57:11.826204" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.825966" elapsed="0.000462"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.825951" elapsed="0.000516"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.826958" 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-07-28T01:57:11.826611" elapsed="0.000373"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.827751" 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-07-28T01:57:11.827136" 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-07-28T01:57:11.827933" elapsed="0.000209"/>
</kw>
<var name="${iteration}">91</var>
<status status="PASS" start="2026-07-28T01:57:11.825919" 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-07-28T01:57:11.828740" elapsed="0.000187"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.828494" elapsed="0.000472"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.828352" elapsed="0.000639"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.829503" 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-07-28T01:57:11.829136" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.830338" 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-07-28T01:57:11.829726" 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-07-28T01:57:11.830540" elapsed="0.000184"/>
</kw>
<var name="${iteration}">92</var>
<status status="PASS" start="2026-07-28T01:57:11.828321" elapsed="0.002442"/>
</iter>
<iter>
<if>
<branch type="IF" condition="${iteration} &gt; ${iter_start}">
<kw name="Append To List" owner="Collections">
<arg>${items}</arg>
<arg>${separator}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="PASS" start="2026-07-28T01:57:11.831182" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.830945" elapsed="0.000459"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.830930" elapsed="0.000498"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.831937" 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-07-28T01:57:11.831586" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.832752" 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-07-28T01:57:11.832132" 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-07-28T01:57:11.832935" elapsed="0.000182"/>
</kw>
<var name="${iteration}">93</var>
<status status="PASS" start="2026-07-28T01:57:11.830899" 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-07-28T01:57:11.833590" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.833336" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.833322" elapsed="0.000514"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.834327" 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-07-28T01:57:11.833978" elapsed="0.000375"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.835126" 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-07-28T01:57:11.834521" 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-07-28T01:57:11.835309" elapsed="0.000219"/>
</kw>
<var name="${iteration}">94</var>
<status status="PASS" start="2026-07-28T01:57:11.833291" 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-07-28T01:57:11.835998" elapsed="0.000199"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.835761" elapsed="0.000474"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.835737" elapsed="0.000522"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.836786" 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-07-28T01:57:11.836400" elapsed="0.000412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.837584" 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-07-28T01:57:11.836966" 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-07-28T01:57:11.837767" elapsed="0.000180"/>
</kw>
<var name="${iteration}">95</var>
<status status="PASS" start="2026-07-28T01:57:11.835704" 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-07-28T01:57:11.838397" elapsed="0.000197"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.838163" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.838149" elapsed="0.000540"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.839189" 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-07-28T01:57:11.838838" elapsed="0.000377"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.839987" 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-07-28T01:57:11.839367" 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-07-28T01:57:11.840192" elapsed="0.000182"/>
</kw>
<var name="${iteration}">96</var>
<status status="PASS" start="2026-07-28T01:57:11.838118" 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-07-28T01:57:11.840847" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.840611" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.840595" elapsed="0.000531"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.841642" 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-07-28T01:57:11.841272" elapsed="0.000397"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.842424" 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-07-28T01:57:11.841825" 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-07-28T01:57:11.842623" elapsed="0.000185"/>
</kw>
<var name="${iteration}">97</var>
<status status="PASS" start="2026-07-28T01:57:11.840564" 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-07-28T01:57:11.843265" elapsed="0.000221"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.843027" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.843013" elapsed="0.000537"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.844068" 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-07-28T01:57:11.843695" elapsed="0.000400"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.844878" 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-07-28T01:57:11.844256" 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-07-28T01:57:11.845063" elapsed="0.000182"/>
</kw>
<var name="${iteration}">98</var>
<status status="PASS" start="2026-07-28T01:57:11.842982" 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-07-28T01:57:11.845834" elapsed="0.000218"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.845588" elapsed="0.000507"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.845463" elapsed="0.000657"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.846635" 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-07-28T01:57:11.846267" elapsed="0.000394"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.847416" 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-07-28T01:57:11.846817" 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-07-28T01:57:11.847616" elapsed="0.000184"/>
</kw>
<var name="${iteration}">99</var>
<status status="PASS" start="2026-07-28T01:57:11.845419" 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-07-28T01:57:11.848326" elapsed="0.000449"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.848020" elapsed="0.000797"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.848005" elapsed="0.000879"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.849397" 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-07-28T01:57:11.849038" elapsed="0.000385"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.850199" 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-07-28T01:57:11.849596" 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-07-28T01:57:11.850389" elapsed="0.000201"/>
</kw>
<var name="${iteration}">100</var>
<status status="PASS" start="2026-07-28T01:57:11.847975" elapsed="0.002659"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="PASS" start="2026-07-28T01:57:11.604314" elapsed="0.246352"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.851977" 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-07-28T01:57:11.850822" elapsed="0.001183"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.852075" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:11.852237" 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-07-28T01:57:11.549265" elapsed="0.302999"/>
</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-07-28T01:57:11.853612" 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-07-28T01:57:11.853349" elapsed="0.000332">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-07-28T01:57:11.853774" 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-07-28T01:57:11.853012" elapsed="0.000786"/>
</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-07-28T01:57:11.854118" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.853870" elapsed="0.000306"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.854697" 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-07-28T01:57:11.854389" elapsed="0.000334"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.854200" elapsed="0.000558"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.853851" elapsed="0.000929"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.857145" 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-07-28T01:57:11.854933" elapsed="0.002238"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:11.857223" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.857376" 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-07-28T01:57:11.852676" elapsed="0.004725"/>
</kw>
<kw name="Post_To_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.858946" 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-07-28T01:57:11.858695" elapsed="0.000295"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.859378" 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-07-28T01:57:11.859142" elapsed="0.000950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.860513" 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-07-28T01:57:11.860248" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.860960" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.860719" elapsed="0.000284"/>
</kw>
<kw name="Join_Two_Headers" owner="TemplatedRequests">
<kw name="Copy Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:11.861814" 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-07-28T01:57:11.861618" elapsed="0.000222"/>
</kw>
<kw name="Get Dictionary Items" owner="Collections">
<msg time="2026-07-28T01:57:11.862162" 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-07-28T01:57:11.861992" 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-07-28T01:57:11.862337" elapsed="0.000203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.862939" 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-07-28T01:57:11.862694" elapsed="0.000288"/>
</kw>
<return>
<value>${accumulator}</value>
<status status="PASS" start="2026-07-28T01:57:11.863023" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:11.863184" 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-07-28T01:57:11.861200" elapsed="0.002009"/>
</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-07-28T01:57:11.896122" level="INFO">POST Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.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-07-28T01:57:11.896504" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A3/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:57:11.896718" 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-07-28T01:57:11.865510" elapsed="0.031266"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.863429" elapsed="0.033451"/>
</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-07-28T01:57:11.897300" elapsed="0.000050"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.896938" elapsed="0.000543"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.863261" elapsed="0.034273"/>
</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-07-28T01:57:11.903704" level="INFO"/>
<arg>${response.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.899909" elapsed="0.003858"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.899379" elapsed="0.004437"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.899338" elapsed="0.004512"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.907423" level="INFO">201</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:11.904331" elapsed="0.003175"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.903926" elapsed="0.003628"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.903903" elapsed="0.003684"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.908387" 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-07-28T01:57:11.907840" elapsed="0.000585"/>
</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-07-28T01:57:11.908907" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.908553" elapsed="0.000433"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.909700" 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-07-28T01:57:11.909260" elapsed="0.000477"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.909019" elapsed="0.000767"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.908527" elapsed="0.001289"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.910579" 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-07-28T01:57:11.910054" elapsed="0.000562"/>
</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-07-28T01:57:11.911059" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.910713" elapsed="0.000425"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.911845" 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-07-28T01:57:11.911414" elapsed="0.000467"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:11.911171" elapsed="0.000759"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.910688" elapsed="0.001272"/>
</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-07-28T01:57:11.912199" elapsed="0.000944"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:57:11.913703" 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-07-28T01:57:11.913403" elapsed="0.000325"/>
</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-07-28T01:57:11.913882" elapsed="0.002229"/>
</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-07-28T01:57:11.898322" elapsed="0.017851"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:11.916351" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:11.916244" elapsed="0.000151"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.916226" elapsed="0.000190"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:57:11.918909" 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-07-28T01:57:11.916579" elapsed="0.002356"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:57:11.918983" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:11.919139" 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-07-28T01:57:11.857743" elapsed="0.061421"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.919273" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:57:11.919428" 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-07-28T01:57:11.464070" elapsed="0.455397"/>
</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-07-28T01:57:11.919812" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.919575" elapsed="0.000306"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.919557" elapsed="0.000347"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:57:11.919937" 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-07-28T01:57:11.461484" elapsed="0.458591"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:11.449989" elapsed="0.470131"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:10.489814" elapsed="1.430340"/>
</for>
<doc>Add 100 flows to group type 2 in every switch.</doc>
<status status="PASS" start="2026-07-28T01:57:10.489407" elapsed="1.430886"/>
</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-07-28T01:57:11.922056" 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-07-28T01:57:11.921836" elapsed="0.000266"/>
</kw>
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.925325" 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-07-28T01:57:11.925104" elapsed="0.000268"/>
</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-07-28T01:57:11.927832" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:11.927548" elapsed="0.000340"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:11.927529" elapsed="0.000383"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:11.928250" 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-07-28T01:57:11.928352" 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-07-28T01:57:11.928074" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.928929" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:57:11.928551" elapsed="0.000425"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:11.929515" 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-07-28T01:57:11.929133" elapsed="0.000414"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:11.930428" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:11.930520" 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-07-28T01:57:11.930156" elapsed="0.000388"/>
</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-07-28T01:57:11.930703" elapsed="0.000317"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:11.931879" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:12.301866" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:06 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:11.931560" elapsed="0.370549"/>
</kw>
<msg time="2026-07-28T01:57:12.302209" 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-07-28T01:57:11.931188" elapsed="0.371112"/>
</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-07-28T01:57:11.929764" elapsed="0.372643"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:12.303183" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:57:13.520365" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:13.520829" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:13.520934" 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-07-28T01:57:12.302679" elapsed="1.218319"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:13.521554" elapsed="0.000637"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:13.523507" 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-07-28T01:57:13.522734" elapsed="0.000912"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:13.524146" elapsed="0.000050"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:13.523831" elapsed="0.000443"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:13.523778" elapsed="0.000548"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:13.524741" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-07-28T01:57:13.524484" elapsed="0.000409"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:13.524415" elapsed="0.000532"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:13.525025" 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-07-28T01:57:13.531441" elapsed="0.000815"/>
</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-07-28T01:57:13.532429" elapsed="0.000190"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:13.532786" elapsed="0.000112"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:13.525808" elapsed="0.007147"/>
</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-07-28T01:57:11.927008" elapsed="1.606042"/>
</kw>
<msg time="2026-07-28T01:57:13.533110" 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-07-28T01:57:11.926441" elapsed="1.606736"/>
</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-07-28T01:57:11.925947" elapsed="1.607316"/>
</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-07-28T01:57:13.535524" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:13.535166" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:13.535146" elapsed="0.000463"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.535909" 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-07-28T01:57:13.536024" 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-07-28T01:57:13.535765" elapsed="0.000286"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:13.536640" 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.224" 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-07-28T01:57:13.536218" elapsed="0.000554"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.537333" 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-07-28T01:57:13.536941" elapsed="0.000421"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:13.538337" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:13.538419" 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-07-28T01:57:13.538035" elapsed="0.000409"/>
</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-07-28T01:57:13.538627" elapsed="0.000354"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.539960" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:13.881762" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:12 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:13.539623" elapsed="0.342331"/>
</kw>
<msg time="2026-07-28T01:57:13.882046" 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-07-28T01:57:13.539162" elapsed="0.342971"/>
</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-07-28T01:57:13.537616" elapsed="0.344635"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.882876" 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-07-28T01:57:13.925785" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:57:13.926127" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:13.926237" 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-07-28T01:57:13.882571" elapsed="0.043792"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:13.926870" elapsed="0.000635"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:13.928882" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:13.928067" elapsed="0.000986"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:13.929662" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:13.929248" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:13.929197" elapsed="0.000623"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:13.930250" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-07-28T01:57:13.930000" elapsed="0.000482"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:13.929905" elapsed="0.000638"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:13.930620" 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-07-28T01:57:13.936839" elapsed="0.000365"/>
</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-07-28T01:57:13.937374" elapsed="0.000217"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:13.937745" 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-07-28T01:57:13.931517" elapsed="0.006419"/>
</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-07-28T01:57:13.534617" elapsed="0.403417"/>
</kw>
<msg time="2026-07-28T01:57:13.938088" 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-07-28T01:57:13.534003" elapsed="0.404138"/>
</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-07-28T01:57:13.533471" elapsed="0.404751"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:57:11.925593" elapsed="2.012762"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.943799" 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-07-28T01:57:13.943366" elapsed="0.000460"/>
</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-07-28T01:57:13.945706" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:13.945784" 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-07-28T01:57:13.945410" elapsed="0.000399"/>
</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-07-28T01:57:13.946007" elapsed="0.000330"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:13.947337" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:14.289001" 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 Tue Jul 28 01:56:31 UTC 2026

  System load:  0.28               Processes:             109
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:13 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:13.946921" elapsed="0.342264"/>
</kw>
<msg time="2026-07-28T01:57:14.289281" 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-07-28T01:57:13.946559" elapsed="0.342822"/>
</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-07-28T01:57:13.944882" elapsed="0.344653"/>
</kw>
<msg time="2026-07-28T01:57:14.289595" 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-07-28T01:57:13.944434" elapsed="0.345213"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:57:13.944010" elapsed="0.345729"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:57:14.289800" elapsed="0.000049"/>
</return>
<msg time="2026-07-28T01:57:14.290044" 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-07-28T01:57:13.942769" elapsed="0.347303"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:14.291009" 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-07-28T01:57:14.290421" elapsed="0.000635"/>
</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-07-28T01:57:14.293530" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:14.291152" elapsed="0.002436"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:14.291124" elapsed="0.002489"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:14.294104" level="INFO">Start mininet --topo linear,3 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:14.293793" elapsed="0.000358"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:57:14.296976" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:57:14.294325" elapsed="0.002711"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:57:14.594038" 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-07-28T01:57:14.297200" elapsed="0.297022"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:14.595175" 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-07-28T01:57:14.594686" elapsed="0.000555"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:57:14.597894" 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-07-28T01:57:14.595450" elapsed="0.002500"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:57:14.616497" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s2
        Controller "tcp:10.30.170.50:6633"
        Controller "ptcp:6655"
        fail_mode: secure
        Port s2
            Interface s2
                type: internal
        Port s2-eth2
            Interface s2-eth2
        Port s2-eth3
            Interface s2-eth3
        Port s2-eth1
            Interface s2-eth1
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1-eth1
            Interface s1-eth1
        Port s1
            Interface s1
                type: internal
    Bridge s3
        Controller "tcp:10.30.170.50:6633"
        Controller "ptcp:6656"
        fail_mode: secure
        Port s3-eth1
            Interface s3-eth1
        Port s3-eth2
            Interface s3-eth2
        Port s3
            Interface s3
                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-07-28T01:57:14.598110" elapsed="0.018558"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:57:14.616724" elapsed="0.000053"/>
</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-07-28T01:57:11.922397" elapsed="2.694531"/>
</kw>
<arg>${SWITCHES}</arg>
<doc>Start mininet linear topology with 3 nodes.</doc>
<status status="PASS" start="2026-07-28T01:57:11.921236" elapsed="2.695765"/>
</kw>
<doc>Start Mininet Linear with 3 switches.</doc>
<status status="PASS" start="2026-07-28T01:57:11.920732" elapsed="2.696398"/>
</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-07-28T01:57:14.624902" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:14.625205" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:14.625363" 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-07-28T01:57:14.619674" elapsed="0.005727"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:14.629211" 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-07-28T01:57:14.625717" elapsed="0.003562"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:14.636183" 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-07-28T01:57:14.632922" elapsed="0.003343">'{"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-07-28T01:57:14.636485" 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-07-28T01:57:14.636765" 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-07-28T01:57:14.636959" 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-07-28T01:57:14.637155" 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-07-28T01:57:14.637360" 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-07-28T01:57:14.637655" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:14.637473" elapsed="0.000238"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:14.637438" 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-07-28T01:57:14.637961" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:14.637791" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:14.637776" elapsed="0.000262"/>
</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-07-28T01:57:14.638259" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:14.638090" elapsed="0.000223"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:14.638074" elapsed="0.000262"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:14.632671" elapsed="0.005715">'{"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-07-28T01:57:14.629364" elapsed="0.009099">'{"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-07-28T01:57:14.619291" elapsed="0.019284">'{"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-07-28T01:57:15.650670" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:15.651253" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:15.651530" 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-07-28T01:57:15.640807" elapsed="0.010774"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:15.655859" 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-07-28T01:57:15.651966" elapsed="0.003980"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:15.663400" 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-07-28T01:57:15.659930" elapsed="0.003571">'{"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-07-28T01:57:15.663709" 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-07-28T01:57:15.663912" elapsed="0.000021"/>
</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-07-28T01:57:15.664106" 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-07-28T01:57:15.664300" 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-07-28T01:57:15.664514" 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-07-28T01:57:15.664793" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:15.664611" elapsed="0.000237"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:15.664590" elapsed="0.000286"/>
</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-07-28T01:57:15.665103" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:15.664932" elapsed="0.000226"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:15.664917" 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-07-28T01:57:15.665408" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:15.665233" elapsed="0.000245"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:15.665218" elapsed="0.000284"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:15.659669" elapsed="0.005886">'{"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-07-28T01:57:15.656043" elapsed="0.009576">'{"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-07-28T01:57:15.639881" elapsed="0.025844">'{"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-07-28T01:57:16.676139" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:16.676582" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:16.676739" 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-07-28T01:57:16.668316" elapsed="0.008460"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:16.680757" 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-07-28T01:57:16.677140" elapsed="0.003781"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:16.689149" 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-07-28T01:57:16.684600" elapsed="0.004714">'{"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-07-28T01:57:16.689878" elapsed="0.000056"/>
</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-07-28T01:57:16.690353" elapsed="0.000054"/>
</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-07-28T01:57:16.690677" 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-07-28T01:57:16.691011" elapsed="0.000022"/>
</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-07-28T01:57:16.691238" elapsed="0.000025"/>
</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-07-28T01:57:16.691550" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:16.691343" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:16.691324" elapsed="0.000317"/>
</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-07-28T01:57:16.691885" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:16.691709" elapsed="0.000231"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:16.691692" elapsed="0.000271"/>
</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-07-28T01:57:16.692184" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:16.692015" elapsed="0.000224"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:16.692001" elapsed="0.000260"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:16.684325" elapsed="0.007997">'{"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-07-28T01:57:16.681007" elapsed="0.011381">'{"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-07-28T01:57:16.667200" elapsed="0.025312">'{"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-07-28T01:57:17.702890" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:17.703168" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:17.703323" 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-07-28T01:57:17.695165" elapsed="0.008196"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:17.708745" 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-07-28T01:57:17.703765" elapsed="0.005053"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:17.715759" 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-07-28T01:57:17.712575" elapsed="0.003263">'{"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-07-28T01:57:17.716044" elapsed="0.000023"/>
</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-07-28T01:57:17.716327" 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-07-28T01:57:17.716559" 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-07-28T01:57:17.716770" elapsed="0.000022"/>
</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-07-28T01:57:17.716982" 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-07-28T01:57:17.717287" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:17.717082" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:17.717062" elapsed="0.000312"/>
</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-07-28T01:57:17.717637" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:17.717432" elapsed="0.000263"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:17.717414" elapsed="0.000304"/>
</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-07-28T01:57:17.717944" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:17.717770" elapsed="0.000228"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:17.717755" elapsed="0.000270"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:17.712285" elapsed="0.005797">'{"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-07-28T01:57:17.708902" elapsed="0.009242">'{"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-07-28T01:57:17.693971" elapsed="0.024279">'{"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-07-28T01:57:18.727741" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:18.728480" level="INFO">GET Response : url=http://10.30.170.50: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","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: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-07-28T01:57:18.728686" 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-07-28T01:57:18.720838" elapsed="0.007889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:18.733425" 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: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-07-28T01:57:18.729149" elapsed="0.004518"/>
</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-07-28T01:57:18.737749" elapsed="0.002801"/>
</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-07-28T01:57:18.740753" elapsed="0.002822"/>
</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-07-28T01:57:18.743786" elapsed="0.002782"/>
</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-07-28T01:57:18.746769" elapsed="0.002794"/>
</kw>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:18.752761" 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']"},{"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: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-07-28T01:57:18.749762" elapsed="0.003119">'{"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: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-07-28T01:57:18.753119" 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-07-28T01:57:18.753415" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:18.753221" elapsed="0.000268"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:18.753200" elapsed="0.000317"/>
</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-07-28T01:57:18.753748" elapsed="0.000062"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:18.753573" elapsed="0.000278"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:18.753557" elapsed="0.000318"/>
</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-07-28T01:57:18.754107" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:18.753931" elapsed="0.000232"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:18.753915" elapsed="0.000272"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:18.737525" elapsed="0.016721">'{"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: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-07-28T01:57:18.733765" elapsed="0.020572">'{"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: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-07-28T01:57:18.719803" elapsed="0.034686">'{"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: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-07-28T01:57:19.765611" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:19.766289" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:19.766497" 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-07-28T01:57:19.756993" elapsed="0.009545"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.770841" 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-07-28T01:57:19.766875" elapsed="0.004068"/>
</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-07-28T01:57:19.774686" elapsed="0.003702"/>
</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-07-28T01:57:19.778611" elapsed="0.002771"/>
</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-07-28T01:57:19.781662" elapsed="0.002729"/>
</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-07-28T01:57:19.784612" elapsed="0.002725"/>
</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-07-28T01:57:19.787559" elapsed="0.002780"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.791040" 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-07-28T01:57:19.790568" 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-07-28T01:57:19.791399" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.791149" elapsed="0.000327"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.791129" elapsed="0.000381"/>
</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-07-28T01:57:19.791811" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.791568" elapsed="0.000301"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.791552" elapsed="0.000340"/>
</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-07-28T01:57:19.792193" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.791944" elapsed="0.000307"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.791929" elapsed="0.000345"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:19.774393" elapsed="0.017920"/>
</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-07-28T01:57:19.792724" elapsed="0.002903"/>
</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-07-28T01:57:19.795832" elapsed="0.002784"/>
</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-07-28T01:57:19.798811" elapsed="0.002780"/>
</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-07-28T01:57:19.801791" elapsed="0.002786"/>
</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-07-28T01:57:19.804772" elapsed="0.002740"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.808161" 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-07-28T01:57:19.807708" 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="PASS" start="2026-07-28T01:57:19.808562" elapsed="0.002716"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:19.808265" elapsed="0.003056"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.808244" elapsed="0.003103"/>
</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-07-28T01:57:19.811684" elapsed="0.002856"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:19.811404" elapsed="0.003180"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.811388" elapsed="0.003221"/>
</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-07-28T01:57:19.814918" elapsed="0.003212"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:19.814666" elapsed="0.003506"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.814650" elapsed="0.003548"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:19.792557" elapsed="0.025702"/>
</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-07-28T01:57:19.818706" elapsed="0.002826"/>
</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-07-28T01:57:19.821769" elapsed="0.002811"/>
</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-07-28T01:57:19.824812" elapsed="0.002791"/>
</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-07-28T01:57:19.827797" elapsed="0.002874"/>
</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-07-28T01:57:19.830869" elapsed="0.002928"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.834483" 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-07-28T01:57:19.833991" elapsed="0.000524"/>
</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-07-28T01:57:19.834830" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.834589" elapsed="0.000388"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.834571" elapsed="0.000435"/>
</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-07-28T01:57:19.835307" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.835063" elapsed="0.000302"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.835047" elapsed="0.000379"/>
</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-07-28T01:57:19.835741" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:19.835499" elapsed="0.000338"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.835482" elapsed="0.000382"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:19.818499" elapsed="0.017389"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:19.771027" elapsed="0.064890"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-07-28T01:57:19.755913" elapsed="0.080067"/>
</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-07-28T01:57:14.618144" elapsed="5.217885"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-07-28T01:57:14.617617" elapsed="5.218541"/>
</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-07-28T01:57:19.880206" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:19.881544" level="INFO">GET Response : url=http://10.30.170.50: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":41618,"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":112000000}},"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":70000000}},"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":112000000}},"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":70000000}},"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":113000000}},"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":70000000}},"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":70000000}},"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":109000000}},"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":97000000}},"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":70000000}},"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":109000000}},"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":70000000}},"flags":""},{"id":"#UF$TABLE*0-68","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":69000000}},"flags":"SEND_FLOW_REM"},{"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":109000000}},"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":70000000}},"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":70000000}},"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","d... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:57:19.881814" 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-07-28T01:57:19.838127" elapsed="0.043717"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.885418" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41618,"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":112000000}},"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":70000000}},"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":112000000}},"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":70000000}},"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":113000000}},"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":70000000}},"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":70000000}},"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":109000000}},"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":97000000}},"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":70000000}},"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":109000000}},"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":70000000}},"flags":""},{"id":"#UF$TABLE*0-68","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":69000000}},"flags":"SEND_FLOW_REM"},{"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":109000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":112000000}},"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":69000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":112000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":112000000}},"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":97000000}},"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":112000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":109000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":113000000}},"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":69000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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-07-28T01:57:18.622Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":163000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":165000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":165000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":88000000},"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":88000000},"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":88000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":88000000},"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":588000000},"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":932000000},"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":588000000},"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":932000000},"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":932000000},"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":587000000},"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":587000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":587000000},"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":595000000},"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":587000000},"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":595000000},"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":595000000},"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":595000000},"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":587000000},"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":595000000},"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":582000000},"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":595000000},"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":582000000},"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":582000000},"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":582000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":96000000},"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":582000000},"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":581000000},"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":96000000},"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":96000000},"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":96000000},"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":581000000},"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":581000000},"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":95000000},"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":581000000},"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":578000000},"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":578000000},"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":95000000},"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":94000000},"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":94000000},"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":578000000},"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":578000000},"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":578000000},"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":578000000},"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":93000000},"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":578000000},"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":93000000},"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":578000000},"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":578000000},"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":578000000},"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":93000000},"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":577000000},"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":577000000},"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":577000000},"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":93000000},"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":92000000},"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":577000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":577000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":577000000},"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":577000000},"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":577000000},"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":91000000},"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":91000000},"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":91000000},"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":87000000},"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":577000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":577000000},"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":577000000},"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":87000000},"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":577000000},"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":87000000},"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":87000000},"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":576000000},"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":576000000},"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":576000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":573000000},"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":595000000},"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":593000000},"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":573000000},"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":591000000},"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":591000000},"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":590000000},"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":573000000},"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":590000000},"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":590000000},"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":589000000},"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":589000000},"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":588000000},"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":588000000},"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":573000000},"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":588000000},"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":573000000},"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":588000000},"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":573000000},"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":588000000},"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":588000000},"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":588000000},"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":587000000},"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":587000000},"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":587000000},"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":587000000},"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":586000000},"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":586000000},"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":93000000},"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":93000000},"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":573000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":90000000},"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":89000000},"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":88000000},"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":88000000},"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":573000000},"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":88000000},"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":88000000},"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":88000000},"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":573000000},"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":88000000},"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":88000000},"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":88000000},"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":88000000},"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":88000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":594000000},"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":591000000},"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":589000000},"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":588000000},"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":588000000},"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":588000000},"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":587000000},"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":587000000},"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":586000000},"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":586000000},"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":586000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":92000000},"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":92000000},"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":92000000},"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":90000000},"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":90000000},"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":89000000},"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":573000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":88000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.738Z"}},{"id":"openflow:1","flow-node-inventory:port-number":41606,"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":107000000}},"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":101000000}},"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":107000000}},"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":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":0,"nanosecond":110000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":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":0,"nanosecond":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":110000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":110000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":107000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":101000000}},"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":107000000}},"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":102000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":111000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"flags":""},{"id":"#UF$TABLE*0-70","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":76000000}},"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":0,"nanosecond":102000000}},"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":77000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"8","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-07-28T01:57:18.632Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":179000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":4,"nanosecond":172000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":179000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":89000000},"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":89000000},"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":89000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":89000000},"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":585000000},"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":932000000},"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":585000000},"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":931000000},"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":931000000},"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":585000000},"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":585000000},"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":931000000},"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":931000000},"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":931000000},"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":931000000},"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":931000000},"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":585000000},"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":596000000},"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":585000000},"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":596000000},"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":596000000},"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":596000000},"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":585000000},"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":596000000},"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":585000000},"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":596000000},"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":582000000},"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":582000000},"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":582000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":93000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":93000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":582000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":582000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":582000000},"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":582000000},"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":582000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":582000000},"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":90000000},"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":582000000},"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":90000000},"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":90000000},"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":582000000},"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":582000000},"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":582000000},"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":90000000},"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":90000000},"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":90000000},"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":90000000},"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":90000000},"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":582000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":582000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":94000000},"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":94000000},"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":582000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":593000000},"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":593000000},"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":593000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":93000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":90000000},"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":90000000},"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":89000000},"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":89000000},"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":89000000},"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":582000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.747Z"}},{"id":"openflow:2","flow-node-inventory:port-number":41632,"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":120000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":122000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":102000000}},"flags":""},{"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":"2","byte-count":"170","duration":{"second":0,"nanosecond":86000000}},"flags":"SEND_FLOW_REM"},{"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":114000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":101000000}},"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":101000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":122000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":114000000}},"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":114000000}},"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":114000000}},"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":102000000}},"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":114000000}},"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":114000000}},"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":114000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","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-07-28T01:57:18.624Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":166000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":164000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":166000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":166000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":90000000},"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":90000000},"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":90000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":90000000},"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":591000000},"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":932000000},"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":591000000},"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":932000000},"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":932000000},"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":591000000},"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":591000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":591000000},"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":599000000},"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":591000000},"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":599000000},"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":599000000},"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":599000000},"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":591000000},"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":599000000},"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":591000000},"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":598000000},"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":591000000},"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":591000000},"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":591000000},"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":598000000},"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":598000000},"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":598000000},"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":598000000},"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":598000000},"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":99000000},"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":591000000},"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":591000000},"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":99000000},"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":99000000},"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":99000000},"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":591000000},"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":591000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":98000000},"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":98000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":591000000},"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":98000000},"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":591000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":97000000},"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":591000000},"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":591000000},"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":591000000},"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":97000000},"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":97000000},"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":591000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":591000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":91000000},"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":591000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":599000000},"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":598000000},"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":591000000},"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":598000000},"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":598000000},"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":598000000},"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":591000000},"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":598000000},"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":597000000},"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":597000000},"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":597000000},"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":597000000},"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":597000000},"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":591000000},"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":596000000},"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":591000000},"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":596000000},"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":591000000},"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":596000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":594000000},"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":98000000},"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":98000000},"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":591000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":591000000},"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":97000000},"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":97000000},"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":97000000},"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":591000000},"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":97000000},"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":97000000},"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":96000000},"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":96000000},"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":96000000},"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":95000000},"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":95000000},"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":95000000},"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":93000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":96000000},"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":96000000},"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":95000000},"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":95000000},"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":95000000},"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":95000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":590000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":90000000},"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":90000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.741Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:19.882080" elapsed="0.008173"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.893796" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-07-28T01:57:19.893882" 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-07-28T01:57:19.890511" elapsed="0.003396"/>
</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-07-28T01:57:19.894144" elapsed="0.000376"/>
</kw>
<arg>${all_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:57:19.837792" elapsed="0.056798"/>
</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-07-28T01:57:19.837166" elapsed="0.057473"/>
</kw>
<doc>Check Groups after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:19.836667" elapsed="0.058090"/>
</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-07-28T01:57:19.936010" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:19.938358" level="INFO">GET Response : url=http://10.30.170.50: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":41618,"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":112000000}},"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":70000000}},"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":112000000}},"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":70000000}},"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":113000000}},"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":70000000}},"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":70000000}},"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":109000000}},"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":97000000}},"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":70000000}},"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":109000000}},"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":70000000}},"flags":""},{"id":"#UF$TABLE*0-68","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":69000000}},"flags":"SEND_FLOW_REM"},{"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":109000000}},"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":70000000}},"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":70000000}},"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","d... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:57:19.939002" 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-07-28T01:57:19.895902" elapsed="0.043168"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.944411" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":41618,"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":112000000}},"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":70000000}},"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":112000000}},"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":70000000}},"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":113000000}},"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":70000000}},"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":70000000}},"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":109000000}},"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":97000000}},"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":70000000}},"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":109000000}},"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":70000000}},"flags":""},{"id":"#UF$TABLE*0-68","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":69000000}},"flags":"SEND_FLOW_REM"},{"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":109000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":112000000}},"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":69000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":112000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":112000000}},"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":97000000}},"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":112000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":109000000}},"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":70000000}},"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":113000000}},"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":109000000}},"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":70000000}},"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":70000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":113000000}},"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":69000000}},"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":69000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":70000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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":97000000}},"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-07-28T01:57:18.622Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":163000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":165000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":165000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":88000000},"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":88000000},"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":88000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":88000000},"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":588000000},"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":932000000},"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":588000000},"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":932000000},"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":932000000},"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":587000000},"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":587000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":587000000},"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":595000000},"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":587000000},"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":595000000},"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":595000000},"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":595000000},"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":587000000},"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":595000000},"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":582000000},"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":595000000},"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":582000000},"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":582000000},"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":582000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":96000000},"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":582000000},"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":581000000},"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":96000000},"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":96000000},"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":96000000},"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":581000000},"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":581000000},"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":95000000},"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":581000000},"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":578000000},"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":578000000},"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":95000000},"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":94000000},"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":94000000},"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":578000000},"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":578000000},"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":578000000},"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":578000000},"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":93000000},"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":578000000},"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":93000000},"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":578000000},"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":578000000},"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":578000000},"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":93000000},"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":577000000},"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":577000000},"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":577000000},"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":93000000},"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":92000000},"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":577000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":577000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":577000000},"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":577000000},"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":577000000},"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":91000000},"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":91000000},"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":91000000},"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":87000000},"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":577000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":577000000},"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":577000000},"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":87000000},"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":577000000},"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":87000000},"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":87000000},"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":576000000},"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":576000000},"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":576000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":573000000},"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":595000000},"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":593000000},"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":573000000},"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":591000000},"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":591000000},"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":590000000},"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":573000000},"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":590000000},"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":590000000},"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":589000000},"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":589000000},"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":588000000},"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":588000000},"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":573000000},"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":588000000},"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":573000000},"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":588000000},"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":573000000},"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":588000000},"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":588000000},"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":588000000},"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":587000000},"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":587000000},"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":587000000},"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":587000000},"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":586000000},"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":586000000},"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":93000000},"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":93000000},"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":573000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":90000000},"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":89000000},"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":88000000},"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":88000000},"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":573000000},"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":88000000},"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":88000000},"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":88000000},"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":573000000},"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":88000000},"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":88000000},"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":88000000},"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":88000000},"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":88000000},"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":87000000},"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":87000000},"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":87000000},"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":87000000},"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":594000000},"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":591000000},"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":589000000},"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":588000000},"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":588000000},"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":588000000},"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":587000000},"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":587000000},"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":586000000},"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":586000000},"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":586000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":92000000},"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":92000000},"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":92000000},"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":90000000},"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":90000000},"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":89000000},"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":573000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":88000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.738Z"}},{"id":"openflow:1","flow-node-inventory:port-number":41606,"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":107000000}},"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":101000000}},"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":107000000}},"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":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":0,"nanosecond":110000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":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":0,"nanosecond":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":110000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":101000000}},"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":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":0,"nanosecond":110000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":107000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":107000000}},"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":107000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":101000000}},"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":101000000}},"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":107000000}},"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":102000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":77000000}},"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":102000000}},"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":111000000}},"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":77000000}},"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":77000000}},"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":77000000}},"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":77000000}},"flags":""},{"id":"#UF$TABLE*0-70","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":76000000}},"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":0,"nanosecond":102000000}},"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":77000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"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":101000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"8","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-07-28T01:57:18.632Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":179000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":4,"nanosecond":172000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":179000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":89000000},"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":89000000},"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":89000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":89000000},"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":585000000},"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":932000000},"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":585000000},"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":931000000},"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":931000000},"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":585000000},"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":585000000},"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":931000000},"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":931000000},"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":931000000},"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":931000000},"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":931000000},"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":585000000},"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":596000000},"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":585000000},"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":596000000},"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":596000000},"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":596000000},"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":585000000},"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":596000000},"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":585000000},"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":596000000},"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":582000000},"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":582000000},"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":582000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":93000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":93000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":582000000},"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":582000000},"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":582000000},"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":93000000},"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":93000000},"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":582000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":582000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":582000000},"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":582000000},"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":582000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":582000000},"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":90000000},"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":582000000},"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":90000000},"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":90000000},"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":582000000},"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":582000000},"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":582000000},"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":90000000},"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":90000000},"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":90000000},"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":90000000},"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":90000000},"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":582000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":582000000},"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":593000000},"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":582000000},"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":593000000},"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":582000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":593000000},"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":94000000},"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":94000000},"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":582000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":582000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":593000000},"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":593000000},"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":593000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":592000000},"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":93000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":90000000},"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":90000000},"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":89000000},"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":89000000},"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":89000000},"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":582000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"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":89000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.747Z"}},{"id":"openflow:2","flow-node-inventory:port-number":41632,"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":120000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":122000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":102000000}},"flags":""},{"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":"2","byte-count":"170","duration":{"second":0,"nanosecond":86000000}},"flags":"SEND_FLOW_REM"},{"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":114000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":101000000}},"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":101000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":102000000}},"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":114000000}},"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":102000000}},"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":120000000}},"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":114000000}},"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":102000000}},"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":102000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":122000000}},"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":101000000}},"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":101000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":102000000}},"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":114000000}},"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":114000000}},"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":114000000}},"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":114000000}},"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":102000000}},"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":114000000}},"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":114000000}},"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":114000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"17","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-07-28T01:57:18.624Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":166000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":164000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":166000000},"bytes":{"transmitted":"601","received":"601"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":166000000},"bytes":{"transmitted":"601","received":"516"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":90000000},"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":90000000},"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":90000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":90000000},"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":591000000},"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":932000000},"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":591000000},"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":932000000},"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":932000000},"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":591000000},"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":591000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":932000000},"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":591000000},"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":599000000},"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":591000000},"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":599000000},"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":599000000},"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":599000000},"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":591000000},"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":599000000},"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":591000000},"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":598000000},"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":591000000},"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":591000000},"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":591000000},"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":598000000},"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":598000000},"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":598000000},"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":598000000},"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":598000000},"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":99000000},"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":591000000},"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":591000000},"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":99000000},"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":99000000},"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":99000000},"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":591000000},"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":591000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":98000000},"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":98000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":591000000},"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":98000000},"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":591000000},"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":98000000},"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":591000000},"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":591000000},"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":591000000},"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":97000000},"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":591000000},"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":591000000},"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":591000000},"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":97000000},"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":97000000},"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":591000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":92000000},"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":591000000},"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":92000000},"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":92000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":91000000},"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":591000000},"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":91000000},"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":91000000},"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":591000000},"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":591000000},"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":591000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":91000000},"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":591000000},"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":599000000},"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":598000000},"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":591000000},"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":598000000},"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":598000000},"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":598000000},"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":591000000},"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":598000000},"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":597000000},"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":597000000},"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":597000000},"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":597000000},"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":597000000},"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":591000000},"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":596000000},"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":591000000},"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":596000000},"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":591000000},"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":596000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":594000000},"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":98000000},"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":98000000},"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":591000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":98000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":97000000},"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":591000000},"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":97000000},"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":97000000},"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":97000000},"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":591000000},"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":97000000},"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":97000000},"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":96000000},"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":96000000},"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":96000000},"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":95000000},"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":95000000},"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":95000000},"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":93000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":596000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":595000000},"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":96000000},"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":96000000},"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":95000000},"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":95000000},"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":95000000},"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":95000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":94000000},"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":590000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":93000000},"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":91000000},"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":91000000},"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":90000000},"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":90000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:18.741Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:19.939750" elapsed="0.011104"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.955475" level="INFO">Item found from container 600 times.</msg>
<msg time="2026-07-28T01:57:19.955597" 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-07-28T01:57:19.951138" elapsed="0.004494"/>
</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-07-28T01:57:19.955920" elapsed="0.000512"/>
</kw>
<arg>${all_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:57:19.895534" elapsed="0.061003"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:19.894989" elapsed="0.061678"/>
</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-07-28T01:57:19.958229" elapsed="0.000148"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:19.957988" elapsed="0.000426"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.957956" elapsed="0.000513"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:19.958948" 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-07-28T01:57:19.958677" elapsed="0.000297"/>
</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-07-28T01:57:19.959860" elapsed="0.000136"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:19.959636" elapsed="0.000397"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:19.959618" elapsed="0.000499"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:57:19.962402" 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-07-28T01:57:19.960293" elapsed="0.002188"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.054211" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=1 byte_count=85 flow_count=101
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=4 byte_count=340 flow_count=101
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=1 byte_count=85 flow_count=101
mininet&gt;</msg>
<msg time="2026-07-28T01:57:20.054326" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=1 byte_count=85 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-07-28T01:57:19.962650" elapsed="0.091704"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:20.054416" elapsed="0.000077"/>
</return>
<msg time="2026-07-28T01:57:20.054643" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=1 byte_count=85 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-07-28T01:57:19.959310" elapsed="0.095361"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-07-28T01:57:20.055330" 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-07-28T01:57:20.054914" elapsed="0.000442"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.056003" 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-07-28T01:57:20.055560" elapsed="0.000473"/>
</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-07-28T01:57:20.056260" elapsed="0.000349"/>
</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-07-28T01:57:19.957629" elapsed="0.099041"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:19.956886" elapsed="0.099889"/>
</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-07-28T01:57:20.058106" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -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-07-28T01:57:20.057780" elapsed="0.000353"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.058710" level="INFO">${command} = sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -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-07-28T01:57:20.058306" elapsed="0.000441"/>
</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-07-28T01:57:20.061315" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:20.061027" elapsed="0.000346"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.061008" elapsed="0.000389"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.061682" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:20.061824" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:20.061563" elapsed="0.000289"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.062382" level="INFO">Attempting to execute command "sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -j DROP" on remote system "10.30.170.50" 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-07-28T01:57:20.062004" elapsed="0.000424"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.062995" 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-07-28T01:57:20.062606" elapsed="0.000414"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.063999" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:20.064074" 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-07-28T01:57:20.063725" elapsed="0.000373"/>
</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-07-28T01:57:20.064310" elapsed="0.000353"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.065535" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:20.378036" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:56:46 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:20.065194" elapsed="0.312959"/>
</kw>
<msg time="2026-07-28T01:57:20.378228" 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-07-28T01:57:20.064834" elapsed="0.313469"/>
</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-07-28T01:57:20.063239" elapsed="0.315167"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.378874" level="INFO">Executing command 'sudo /sbin/iptables -I OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -j DROP'.</msg>
<msg time="2026-07-28T01:57:20.401260" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:20.401560" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:20.401666" 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-07-28T01:57:20.378647" elapsed="0.023072"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:20.402105" elapsed="0.000520"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.403780" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:20.403077" 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-07-28T01:57:20.404435" elapsed="0.000074"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:20.404093" elapsed="0.000493"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.404041" elapsed="0.000597"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:20.405028" elapsed="0.000082"/>
</return>
<status status="PASS" start="2026-07-28T01:57:20.404773" elapsed="0.000465"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.404737" elapsed="0.000563"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:20.405382" 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-07-28T01:57:20.411615" elapsed="0.000216"/>
</kw>
<msg time="2026-07-28T01:57:20.411896" 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-07-28T01:57:20.410770" elapsed="0.001241"/>
</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-07-28T01:57:20.412252" elapsed="0.000033"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:20.412548" elapsed="0.000040"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:20.406141" elapsed="0.006545"/>
</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-07-28T01:57:20.060493" elapsed="0.352331"/>
</kw>
<msg time="2026-07-28T01:57:20.413009" 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-07-28T01:57:20.059526" elapsed="0.353560"/>
</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-07-28T01:57:20.058962" elapsed="0.354241"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.413834" 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-07-28T01:57:20.413426" elapsed="0.000445"/>
</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-07-28T01:57:20.416940" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:20.416539" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.416511" elapsed="0.000541"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.417415" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:20.417581" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:20.417257" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.418360" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.50" 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-07-28T01:57:20.417830" elapsed="0.000594"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.419192" 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-07-28T01:57:20.418671" elapsed="0.000557"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.420541" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:20.420619" 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-07-28T01:57:20.420143" elapsed="0.000500"/>
</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-07-28T01:57:20.420803" elapsed="0.000321"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.422019" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:20.737464" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:20 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:20.421705" elapsed="0.315900"/>
</kw>
<msg time="2026-07-28T01:57:20.737680" 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-07-28T01:57:20.421293" elapsed="0.316461"/>
</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-07-28T01:57:20.419554" elapsed="0.318301"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:20.738344" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-07-28T01:57:20.760782" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:20.761028" 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-07-28T01:57:20.761129" 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-07-28T01:57:20.738095" elapsed="0.023084"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:20.761588" elapsed="0.000443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.763151" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:20.762533" elapsed="0.000710"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:20.763746" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:20.763416" elapsed="0.000467"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.763366" elapsed="0.000571"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:20.764411" elapsed="0.000091"/>
</return>
<status status="PASS" start="2026-07-28T01:57:20.764161" elapsed="0.000420"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:20.764025" elapsed="0.000610"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:20.764711" 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-07-28T01:57:20.772189" elapsed="0.000362"/>
</kw>
<msg time="2026-07-28T01:57:20.772627" 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-07-28T01:57:20.770902" elapsed="0.001801"/>
</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-07-28T01:57:20.772862" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:20.773024" 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-07-28T01:57:20.765418" elapsed="0.007687"/>
</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-07-28T01:57:20.415752" elapsed="0.357443"/>
</kw>
<msg time="2026-07-28T01:57:20.773255" 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-07-28T01:57:20.414946" elapsed="0.358355"/>
</kw>
<msg time="2026-07-28T01:57:20.773413" 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-07-28T01:57:20.414158" elapsed="0.359281"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.773855" 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.50         10.30.171.224       

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-07-28T01:57:20.773609" elapsed="0.000301"/>
</kw>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-07-28T01:57:20.057482" elapsed="0.716485"/>
</kw>
<doc>Disconnect Mininet.</doc>
<status status="PASS" start="2026-07-28T01:57:20.057020" elapsed="0.717064"/>
</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-07-28T01:57:20.781138" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:20.781644" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:20.781818" 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-07-28T01:57:20.775642" elapsed="0.006203"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.784847" 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-07-28T01:57:20.782048" elapsed="0.002896"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:20.792289" 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']"},{"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":{}}}]}}' 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-07-28T01:57:20.788341" elapsed="0.004087">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:20.788097" elapsed="0.004577">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:20.785025" elapsed="0.007783">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:20.775302" elapsed="0.017706">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:21.802494" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:21.803194" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:21.803409" 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-07-28T01:57:21.794913" elapsed="0.008537"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:21.808251" 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-07-28T01:57:21.803818" elapsed="0.004539"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:21.814647" 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']"},{"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":{}}}]}}' 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-07-28T01:57:21.811884" elapsed="0.002950">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:21.811701" elapsed="0.003239">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:21.808442" elapsed="0.006592">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:21.794028" elapsed="0.021175">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:22.826070" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:22.827205" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:22.827583" 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-07-28T01:57:22.817332" elapsed="0.010320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:22.833426" 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-07-28T01:57:22.828243" elapsed="0.005417"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:22.840987" 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']"},{"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":{}}}]}}' 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-07-28T01:57:22.837102" elapsed="0.004028">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:22.836852" elapsed="0.004423">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:22.833755" elapsed="0.007717">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:22.816279" elapsed="0.025416">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:23.851346" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:23.852631" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:23.853086" 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-07-28T01:57:23.843681" elapsed="0.009473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:23.859781" 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-07-28T01:57:23.853782" elapsed="0.006070"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:23.865285" 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']"},{"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":{}}}]}}' 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-07-28T01:57:23.862281" elapsed="0.003105">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:23.862101" elapsed="0.003437">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:23.859916" elapsed="0.005717">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:23.842790" elapsed="0.022988">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:24.875242" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:24.875924" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:24.876105" 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-07-28T01:57:24.868040" elapsed="0.008104"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:24.880274" 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-07-28T01:57:24.876490" elapsed="0.003883"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:24.887698" 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']"},{"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":{}}}]}}' 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-07-28T01:57:24.883827" elapsed="0.004186">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:24.883581" elapsed="0.004579">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:24.880474" elapsed="0.007814">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:24.866842" elapsed="0.021703">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:25.898345" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:25.899030" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:25.899215" 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-07-28T01:57:25.890757" elapsed="0.008496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:25.903368" 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-07-28T01:57:25.899603" elapsed="0.003955"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:25.910958" 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']"},{"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":{}}}]}}' 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-07-28T01:57:25.907039" elapsed="0.004019">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:25.906789" elapsed="0.004373">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:25.903686" elapsed="0.007594">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:25.889738" elapsed="0.021690">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:26.920870" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:26.921925" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:26.922379" 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-07-28T01:57:26.913461" elapsed="0.008982"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:26.927007" 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-07-28T01:57:26.922879" elapsed="0.004228"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:26.933588" 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']"},{"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":{}}}]}}' 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-07-28T01:57:26.930607" elapsed="0.003084">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:26.930333" elapsed="0.003492">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:26.927187" elapsed="0.006732">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:26.912531" elapsed="0.021535">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:27.945242" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:27.945944" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:27.946131" 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-07-28T01:57:27.937309" elapsed="0.008862"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:27.950329" 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-07-28T01:57:27.946521" elapsed="0.003909"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:27.956497" 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']"},{"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":{}}}]}}' 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-07-28T01:57:27.953643" elapsed="0.003041">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:27.953444" elapsed="0.003351">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:27.950538" elapsed="0.006352">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:27.936097" elapsed="0.020963">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:28.966929" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:28.967629" level="INFO">GET Response : url=http://10.30.170.50: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","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-07-28T01:57:28.967826" 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-07-28T01:57:28.959188" elapsed="0.008677"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:28.972027" 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-07-28T01:57:28.968189" elapsed="0.004003"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:28.979590" 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']"},{"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":{}}}]}}' 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-07-28T01:57:28.975666" elapsed="0.004066">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:28.975397" elapsed="0.004484">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:28.972279" elapsed="0.007772">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="FAIL" start="2026-07-28T01:57:28.958239" elapsed="0.022019">'{"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":"/opendayligh...
    [ Message content over the limit has been removed. ]
...penflow: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":{}}}]}}' contains 'openflow:1'</status>
</kw>
<kw name="Check No Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:29.989753" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:29.990057" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:29.990250" 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-07-28T01:57:29.982257" elapsed="0.008035"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:29.994425" 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-07-28T01:57:29.990644" elapsed="0.003877"/>
</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-07-28T01:57:29.997953" elapsed="0.003304"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:29.997700" elapsed="0.003599"/>
</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-07-28T01:57:30.001579" elapsed="0.002414"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:30.001389" elapsed="0.002647"/>
</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-07-28T01:57:30.004294" elapsed="0.002406"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:30.004121" elapsed="0.002620"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:29.994605" elapsed="0.012166"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-07-28T01:57:29.981336" elapsed="0.025499"/>
</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-07-28T01:57:20.774738" elapsed="9.232147"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-07-28T01:57:20.774296" elapsed="9.232715"/>
</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-07-28T01:57:30.008397" level="INFO">${rule} = OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -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-07-28T01:57:30.008058" elapsed="0.000367"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.009005" level="INFO">${command} = sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -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-07-28T01:57:30.008617" elapsed="0.000415"/>
</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-07-28T01:57:30.011201" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:30.010909" elapsed="0.000350"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.010888" elapsed="0.000397"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.011582" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:30.011686" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:30.011435" elapsed="0.000278"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.012296" level="INFO">Attempting to execute command "sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -j DROP" on remote system "10.30.170.50" 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-07-28T01:57:30.011910" elapsed="0.000433"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.012902" 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-07-28T01:57:30.012519" elapsed="0.000409"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.013825" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:30.013902" 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-07-28T01:57:30.013559" elapsed="0.000366"/>
</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-07-28T01:57:30.014085" elapsed="0.000320"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.015266" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:30.338338" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:20 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:30.014950" elapsed="0.323555"/>
</kw>
<msg time="2026-07-28T01:57:30.338676" 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-07-28T01:57:30.014593" elapsed="0.324165"/>
</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-07-28T01:57:30.013145" elapsed="0.325726"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.339437" level="INFO">Executing command 'sudo /sbin/iptables -D OUTPUT -p all --source 10.30.170.50 --destination 10.30.171.224 -j DROP'.</msg>
<msg time="2026-07-28T01:57:30.372677" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:30.372956" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:30.373058" 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-07-28T01:57:30.339181" elapsed="0.033928"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:30.373554" elapsed="0.000533"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.375248" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:30.374591" elapsed="0.000753"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:30.375908" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:30.375589" elapsed="0.000427"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.375537" 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-07-28T01:57:30.376444" elapsed="0.000095"/>
</return>
<status status="PASS" start="2026-07-28T01:57:30.376186" elapsed="0.000445"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.376152" elapsed="0.000536"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:30.376765" 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-07-28T01:57:30.381880" elapsed="0.000143"/>
</kw>
<msg time="2026-07-28T01:57:30.382067" 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-07-28T01:57:30.381358" elapsed="0.000772"/>
</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-07-28T01:57:30.382306" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:30.382491" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:30.377533" 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-07-28T01:57:30.010353" elapsed="0.372313"/>
</kw>
<msg time="2026-07-28T01:57:30.382741" 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-07-28T01:57:30.009784" elapsed="0.373006"/>
</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-07-28T01:57:30.009237" elapsed="0.373637"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.383305" 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-07-28T01:57:30.383028" elapsed="0.000304"/>
</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-07-28T01:57:30.385584" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:30.385270" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.385251" elapsed="0.000414"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.385939" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:30.386040" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:30.385816" elapsed="0.000251"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.386629" level="INFO">Attempting to execute command "sudo /sbin/iptables -L -n" on remote system "10.30.170.50" 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-07-28T01:57:30.386231" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.387223" 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-07-28T01:57:30.386843" elapsed="0.000406"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.388265" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:30.388344" 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-07-28T01:57:30.387967" 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-07-28T01:57:30.388555" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.389768" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:30.702505" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:30 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:30.389435" elapsed="0.313207"/>
</kw>
<msg time="2026-07-28T01:57:30.702716" 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-07-28T01:57:30.389063" elapsed="0.313732"/>
</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-07-28T01:57:30.387564" elapsed="0.315350"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:30.703402" level="INFO">Executing command 'sudo /sbin/iptables -L -n'.</msg>
<msg time="2026-07-28T01:57:30.726194" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:30.726447" 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-07-28T01:57:30.726674" 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-07-28T01:57:30.703157" elapsed="0.023574"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:30.727109" elapsed="0.000488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.728704" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:30.728050" elapsed="0.000751"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:30.729274" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:30.728978" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.728928" elapsed="0.000501"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:30.729938" elapsed="0.000067"/>
</return>
<status status="PASS" start="2026-07-28T01:57:30.729601" elapsed="0.000480"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:30.729559" elapsed="0.000579"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:30.730218" 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-07-28T01:57:30.736262" elapsed="0.000144"/>
</kw>
<msg time="2026-07-28T01:57:30.736449" 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-07-28T01:57:30.735750" 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-07-28T01:57:30.736710" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:30.736878" 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-07-28T01:57:30.731036" elapsed="0.005939"/>
</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-07-28T01:57:30.384727" elapsed="0.352343"/>
</kw>
<msg time="2026-07-28T01:57:30.737133" 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-07-28T01:57:30.384134" elapsed="0.353048"/>
</kw>
<msg time="2026-07-28T01:57:30.737297" 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-07-28T01:57:30.383569" elapsed="0.353755"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.737823" 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-07-28T01:57:30.737568" elapsed="0.000323"/>
</kw>
<arg>restore</arg>
<doc>Break and restore controller to mininet connection via iptables.</doc>
<status status="PASS" start="2026-07-28T01:57:30.007650" elapsed="0.730299"/>
</kw>
<doc>Connect Mininet.</doc>
<status status="PASS" start="2026-07-28T01:57:30.007224" elapsed="0.730846"/>
</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-07-28T01:57:30.744658" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:30.744863" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:30.744993" 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-07-28T01:57:30.739937" elapsed="0.005083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.747889" 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-07-28T01:57:30.745230" elapsed="0.002723"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:30.753655" 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-07-28T01:57:30.750568" elapsed="0.003207">'{"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-07-28T01:57:30.754060" 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-07-28T01:57:30.754356" elapsed="0.000030"/>
</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-07-28T01:57:30.754666" elapsed="0.000030"/>
</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-07-28T01:57:30.754973" elapsed="0.000030"/>
</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-07-28T01:57:30.755253" 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-07-28T01:57:30.755645" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:30.755379" elapsed="0.000344"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:30.755353" elapsed="0.000405"/>
</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-07-28T01:57:30.756095" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:30.755832" elapsed="0.000339"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:30.755811" elapsed="0.000392"/>
</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-07-28T01:57:30.756534" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:30.756275" elapsed="0.000335"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:30.756254" elapsed="0.000388"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:30.750372" elapsed="0.006337">'{"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-07-28T01:57:30.748015" elapsed="0.008832">'{"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-07-28T01:57:30.739552" elapsed="0.017443">'{"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-07-28T01:57:31.766932" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:31.767407" level="INFO">GET Response : url=http://10.30.170.50: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: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']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:57:31.767606" 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-07-28T01:57:31.759581" elapsed="0.008065"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:31.771745" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:31.768000" elapsed="0.003838"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:31.779510" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:31.775733" elapsed="0.003900">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:31.779947" elapsed="0.000037"/>
</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-07-28T01:57:31.780175" 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-07-28T01:57:31.780372" 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-07-28T01:57:31.780596" elapsed="0.000023"/>
</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-07-28T01:57:31.780803" 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-07-28T01:57:31.781095" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:31.780907" elapsed="0.000305"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:31.780884" elapsed="0.000357"/>
</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-07-28T01:57:31.781512" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:31.781300" elapsed="0.000272"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:31.781284" elapsed="0.000312"/>
</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-07-28T01:57:31.781838" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:31.781652" elapsed="0.000266"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:31.781636" elapsed="0.000307"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:31.775435" elapsed="0.006559">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:31.771927" elapsed="0.010138">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:31.758448" elapsed="0.023750">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.791293" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:32.791714" level="INFO">GET Response : url=http://10.30.170.50: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: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']"}]}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:57:32.791880" 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-07-28T01:57:32.784625" elapsed="0.007293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:32.796223" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.792250" elapsed="0.004051"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:32.803621" level="FAIL">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.800042" elapsed="0.003761">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.804015" elapsed="0.000023"/>
</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-07-28T01:57:32.804228" elapsed="0.000021"/>
</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-07-28T01:57:32.804426" 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-07-28T01:57:32.804653" elapsed="0.000021"/>
</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-07-28T01:57:32.804853" 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-07-28T01:57:32.805147" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:32.804966" elapsed="0.000236"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:32.804945" elapsed="0.000284"/>
</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-07-28T01:57:32.805499" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:32.805283" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:32.805268" elapsed="0.000321"/>
</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-07-28T01:57:32.805825" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:32.805641" elapsed="0.000238"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:32.805626" elapsed="0.000276"/>
</if>
<var name="${switch}">1</var>
<status status="FAIL" start="2026-07-28T01:57:32.799785" elapsed="0.006169">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.796383" elapsed="0.009638">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:32.783628" elapsed="0.022503">'{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]}]},{"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-07-28T01:57:33.816546" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:33.817264" level="INFO">GET Response : url=http://10.30.170.50: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': '2960'} 
 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: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-07-28T01:57:33.817578" 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-07-28T01:57:33.808675" elapsed="0.008948"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:33.821971" 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: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-07-28T01:57:33.817959" elapsed="0.004116"/>
</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-07-28T01:57:33.825864" elapsed="0.003776"/>
</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-07-28T01:57:33.829841" elapsed="0.002870"/>
</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-07-28T01:57:33.832932" elapsed="0.002849"/>
</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-07-28T01:57:33.835978" elapsed="0.002793"/>
</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-07-28T01:57:33.838982" elapsed="0.003062"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:33.842762" 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-07-28T01:57:33.842257" elapsed="0.000533"/>
</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-07-28T01:57:33.843156" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:33.842891" elapsed="0.000334"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:33.842865" elapsed="0.000389"/>
</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-07-28T01:57:33.843582" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:33.843311" elapsed="0.000340"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:33.843295" elapsed="0.000381"/>
</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-07-28T01:57:33.843986" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:33.843731" elapsed="0.000315"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:33.843715" elapsed="0.000355"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:33.825611" elapsed="0.018482"/>
</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-07-28T01:57:33.844515" elapsed="0.002870"/>
</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-07-28T01:57:33.847602" elapsed="0.002836"/>
</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-07-28T01:57:33.850656" elapsed="0.002832"/>
</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-07-28T01:57:33.853687" elapsed="0.002854"/>
</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-07-28T01:57:33.856740" elapsed="0.002787"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:33.860262" 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-07-28T01:57:33.859794" elapsed="0.000496"/>
</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-07-28T01:57:33.860644" elapsed="0.002846"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:33.860364" elapsed="0.003169"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:33.860345" elapsed="0.003214"/>
</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-07-28T01:57:33.863892" elapsed="0.002893"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:33.863627" elapsed="0.003200"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:33.863604" elapsed="0.003248"/>
</if>
<if>
<branch type="IF" condition="not ${edge}">
<kw name="Should Contain" owner="BuiltIn">
<msg time="2026-07-28T01:57:33.870092" 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']"},{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</msg>
<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="FAIL" start="2026-07-28T01:57:33.867181" elapsed="0.003015">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</kw>
<status status="FAIL" start="2026-07-28T01:57:33.866910" elapsed="0.003391">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</branch>
<status status="FAIL" start="2026-07-28T01:57:33.866893" elapsed="0.003513">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</if>
<var name="${switch}">2</var>
<status status="FAIL" start="2026-07-28T01:57:33.844316" elapsed="0.026189">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="FAIL" start="2026-07-28T01:57:33.822164" elapsed="0.048425">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="FAIL" start="2026-07-28T01:57:33.807600" elapsed="0.063158">'{"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: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":{}}}]}}' does not contain '"dest-tp":"openflow:2:3"'</status>
</kw>
<kw name="Check Linear Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.881391" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.882687" level="INFO">GET Response : url=http://10.30.170.50: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","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: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-07-28T01:57:34.882986" 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-07-28T01:57:34.873132" elapsed="0.009896"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:34.887520" 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: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-07-28T01:57:34.883386" elapsed="0.004318"/>
</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-07-28T01:57:34.891647" elapsed="0.002904"/>
</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-07-28T01:57:34.894751" elapsed="0.002833"/>
</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-07-28T01:57:34.897785" elapsed="0.002839"/>
</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-07-28T01:57:34.900836" elapsed="0.002794"/>
</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-07-28T01:57:34.903839" elapsed="0.002839"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:34.907381" 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-07-28T01:57:34.906895" elapsed="0.000514"/>
</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-07-28T01:57:34.907774" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.907507" elapsed="0.000326"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.907485" elapsed="0.000375"/>
</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-07-28T01:57:34.908173" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.907915" elapsed="0.000315"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.907900" elapsed="0.000354"/>
</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-07-28T01:57:34.908584" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.908306" elapsed="0.000337"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.908291" elapsed="0.000376"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:34.891429" elapsed="0.017261"/>
</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-07-28T01:57:34.909078" elapsed="0.002797"/>
</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-07-28T01:57:34.912074" elapsed="0.002795"/>
</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-07-28T01:57:34.915068" elapsed="0.002782"/>
</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-07-28T01:57:34.918048" elapsed="0.002852"/>
</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-07-28T01:57:34.921112" elapsed="0.002920"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:34.924702" 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-07-28T01:57:34.924228" 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="PASS" start="2026-07-28T01:57:34.925062" elapsed="0.002783"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:34.924801" elapsed="0.003087"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.924782" elapsed="0.003135"/>
</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-07-28T01:57:34.928237" elapsed="0.002822"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:34.927974" elapsed="0.003129"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.927957" elapsed="0.003171"/>
</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-07-28T01:57:34.931449" elapsed="0.002785"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:34.931187" elapsed="0.003089"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.931170" elapsed="0.003131"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:34.908903" elapsed="0.025421"/>
</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-07-28T01:57:34.934764" elapsed="0.002862"/>
</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-07-28T01:57:34.937822" elapsed="0.002841"/>
</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-07-28T01:57:34.940869" elapsed="0.002853"/>
</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-07-28T01:57:34.943977" elapsed="0.003512"/>
</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-07-28T01:57:34.947757" elapsed="0.003412"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:34.951970" 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-07-28T01:57:34.951478" elapsed="0.000521"/>
</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-07-28T01:57:34.952351" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.952083" elapsed="0.000329"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.952060" elapsed="0.000378"/>
</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-07-28T01:57:34.952937" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.952654" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.952497" elapsed="0.000546"/>
</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-07-28T01:57:34.953365" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:34.953114" elapsed="0.000320"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:34.953097" elapsed="0.000378"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:34.934562" elapsed="0.018939"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:34.887789" elapsed="0.065747"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-07-28T01:57:34.872167" elapsed="0.081444"/>
</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-07-28T01:57:30.738787" elapsed="4.214878"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-07-28T01:57:30.738272" elapsed="4.215537"/>
</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-07-28T01:57:34.964874" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.964946" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.958017" elapsed="0.007009"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.971875" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.971940" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.965277" elapsed="0.006754"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.978173" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.978237" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.972280" elapsed="0.006057"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:57:34.957844" elapsed="0.020548"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.984000" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.984068" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.978770" elapsed="0.005399"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.990222" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.990288" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.984393" elapsed="0.006049"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:34.996620" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:34.996683" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.990701" elapsed="0.006065"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:57:34.978568" elapsed="0.018256"/>
</iter>
<iter>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:35.002578" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:35.002643" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:34.997175" elapsed="0.005566"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:35.007750" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:35.007813" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:35.003011" elapsed="0.004889"/>
</kw>
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:35.012813" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:35.012878" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:57:35.008143" elapsed="0.004820"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:57:34.996979" elapsed="0.016054"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:57:34.954849" elapsed="0.058234"/>
</for>
<doc>Remove some groups and flows while network is down.</doc>
<status status="PASS" start="2026-07-28T01:57:34.954157" elapsed="0.059098"/>
</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-07-28T01:57:35.052519" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:35.054689" level="INFO">GET Response : url=http://10.30.170.50: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":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:57:35.055273" 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-07-28T01:57:35.016675" elapsed="0.038665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:35.061330" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":32000000}},"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":3,"nanosecond":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":995000000}},"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":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":3,"nanosecond":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":37000000}},"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":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":37000000}},"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":28000000}},"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":37000000}},"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":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":17000000}},"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":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":3,"nanosecond":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":29000000}},"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":16000000}},"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":37000000}},"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":29000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":3,"nanosecond":41000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":28000000}},"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":26000000}},"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":27000000}},"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":3,"nanosecond":25000000}},"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":27000000}},"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":25000000}},"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":28000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":101,"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-07-28T01:57:34.285Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":750000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"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":19,"nanosecond":211000000},"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":16,"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":16,"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":16,"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":18,"nanosecond":712000000},"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":16,"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":16,"nanosecond":197000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":197000000},"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":18,"nanosecond":711000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":711000000},"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":18,"nanosecond":710000000},"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":18,"nanosecond":710000000},"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":16,"nanosecond":194000000},"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":16,"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":16,"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":16,"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":709000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"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":18,"nanosecond":211000000},"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":18,"nanosecond":209000000},"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":16,"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":18,"nanosecond":207000000},"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":18,"nanosecond":207000000},"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":18,"nanosecond":206000000},"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":16,"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":18,"nanosecond":206000000},"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":18,"nanosecond":206000000},"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":18,"nanosecond":205000000},"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":18,"nanosecond":205000000},"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":18,"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":18,"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":16,"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":18,"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":16,"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":18,"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":16,"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":18,"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":18,"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":18,"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":202000000},"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":18,"nanosecond":202000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":16,"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":706000000},"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":17,"nanosecond":705000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":210000000},"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":17,"nanosecond":207000000},"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":17,"nanosecond":205000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":705000000},"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":16,"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":704000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:34.324Z"}},{"id":"openflow:1","flow-node-inventory:port-number":58940,"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":36000000}},"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":36000000}},"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":36000000}},"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":36000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":36000000}},"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":"6","byte-count":"450","duration":{"second":0,"nanosecond":28000000}},"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":29000000}},"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":37000000}},"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":36000000}},"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":0}},"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":1000000}},"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":37000000}},"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":36000000}},"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":27000000}},"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":0}},"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":1000000}},"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":29000000}},"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":37000000}},"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":36000000}},"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":12000000}},"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":0}},"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":1000000}},"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":29000000}},"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":37000000}},"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":36000000}},"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":12000000}},"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":0}},"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":1000000}},"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":29000000}},"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":37000000}},"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":14000000}},"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":28000000}},"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":0}},"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":1000000}},"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":29000000}},"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":37000000}},"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":14000000}},"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":29000000}},"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":0}},"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":1000000}},"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":29000000}},"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":36000000}},"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":37000000}},"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":14000000}},"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":27000000}},"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":0}},"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":29000000}},"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":37000000}},"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":36000000}},"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":37000000}},"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":14000000}},"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":28000000}},"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":0}},"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":1000000}},"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":14000000}},"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":36000000}},"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":14000000}},"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":29000000}},"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":27000000}},"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":29000000}},"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":14000000}},"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":29000000}},"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":0}},"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":0}},"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":12000000}},"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":12000000}},"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":36000000}},"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":12000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"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":37000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"14","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-07-28T01:57:33.025Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":509000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":18,"nanosecond":502000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":509000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":444000000},"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":443000000},"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":443000000},"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":287000000},"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":286000000},"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":286000000},"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":286000000},"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":443000000},"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":14,"nanosecond":939000000},"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":287000000},"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":14,"nanosecond":940000000},"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":285000000},"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":285000000},"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":14,"nanosecond":940000000},"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":14,"nanosecond":939000000},"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":285000000},"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":285000000},"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":286000000},"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":285000000},"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":286000000},"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":14,"nanosecond":939000000},"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":17,"nanosecond":951000000},"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":14,"nanosecond":939000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":14,"nanosecond":939000000},"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":17,"nanosecond":950000000},"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":14,"nanosecond":940000000},"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":17,"nanosecond":950000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":949000000},"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":17,"nanosecond":950000000},"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":448000000},"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":14,"nanosecond":937000000},"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":14,"nanosecond":937000000},"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":448000000},"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":448000000},"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":447000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":447000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":937000000},"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":14,"nanosecond":937000000},"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":448000000},"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":447000000},"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":447000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":448000000},"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":14,"nanosecond":936000000},"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":448000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":937000000},"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":14,"nanosecond":937000000},"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":447000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":448000000},"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":447000000},"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":14,"nanosecond":936000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":447000000},"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":14,"nanosecond":936000000},"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":446000000},"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":447000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":937000000},"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":14,"nanosecond":936000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":14,"nanosecond":936000000},"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":445000000},"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":446000000},"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":445000000},"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":446000000},"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":446000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":445000000},"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":14,"nanosecond":936000000},"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":445000000},"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":444000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":936000000},"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":14,"nanosecond":937000000},"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":444000000},"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":445000000},"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":444000000},"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":444000000},"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":444000000},"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":14,"nanosecond":936000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":14,"nanosecond":936000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":947000000},"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":14,"nanosecond":937000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":948000000},"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":14,"nanosecond":937000000},"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":16,"nanosecond":947000000},"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":14,"nanosecond":937000000},"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":16,"nanosecond":947000000},"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":14,"nanosecond":936000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":947000000},"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":16,"nanosecond":947000000},"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":448000000},"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":449000000},"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":14,"nanosecond":937000000},"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":448000000},"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":448000000},"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":448000000},"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":449000000},"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":448000000},"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":449000000},"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":449000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":445000000},"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":445000000},"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":445000000},"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":14,"nanosecond":936000000},"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":445000000},"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":446000000},"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":445000000},"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":14,"nanosecond":936000000},"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":445000000},"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":445000000},"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":445000000},"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":445000000},"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":445000000},"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":446000000},"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":445000000},"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":446000000},"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":446000000},"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":15,"nanosecond":947000000},"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":15,"nanosecond":947000000},"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":15,"nanosecond":947000000},"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":15,"nanosecond":946000000},"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":15,"nanosecond":946000000},"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":15,"nanosecond":947000000},"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":15,"nanosecond":946000000},"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":15,"nanosecond":947000000},"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":15,"nanosecond":946000000},"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":15,"nanosecond":946000000},"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":15,"nanosecond":947000000},"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":447000000},"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":446000000},"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":446000000},"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":445000000},"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":446000000},"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":445000000},"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":444000000},"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":444000000},"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":443000000},"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":444000000},"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":443000000},"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":14,"nanosecond":936000000},"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":443000000},"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":444000000},"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":444000000},"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":443000000},"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":444000000},"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":443000000},"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":443000000},"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":443000000},"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":443000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:33.073Z"}},{"id":"openflow:2","flow-node-inventory:port-number":58942,"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":33000000}},"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":10000000}},"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":33000000}},"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":8000000}},"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":11000000}},"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":10000000}},"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":25000000}},"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":20000000}},"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":11000000}},"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":33000000}},"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":11000000}},"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":25000000}},"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":11000000}},"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":4000000}},"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":25000000}},"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":8000000}},"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":33000000}},"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":3000000}},"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":3000000}},"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":25000000}},"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":8000000}},"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":33000000}},"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":4000000}},"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":3000000}},"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":3000000}},"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":4000000}},"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":25000000}},"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":8000000}},"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":33000000}},"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":4000000}},"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":3000000}},"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":3000000}},"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":"12","byte-count":"930","duration":{"second":0,"nanosecond":24000000}},"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":4000000}},"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":25000000}},"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":5000000}},"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":33000000}},"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":4000000}},"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":3000000}},"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":3000000}},"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":4000000}},"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":25000000}},"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":33000000}},"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":33000000}},"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":4000000}},"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":4000000}},"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":2000000}},"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":3000000}},"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":4000000}},"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":33000000}},"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":25000000}},"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":33000000}},"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":33000000}},"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":4000000}},"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":4000000}},"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":2000000}},"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":3000000}},"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":4000000}},"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":8000000}},"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":33000000}},"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":4000000}},"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":4000000}},"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":2000000}},"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":4000000}},"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":25000000}},"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":8000000}},"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":33000000}},"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":4000000}},"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":4000000}},"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":2000000}},"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":3000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":3000000}},"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":3000000}},"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":4000000}},"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":4000000}},"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":4000000}},"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":3000000}},"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":25000000}},"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":25000000}},"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":25000000}},"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":25000000}},"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":25000000}},"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":25000000}},"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":25000000}},"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":25000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"27","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-07-28T01:57:33.027Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":18,"nanosecond":503000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":18,"nanosecond":501000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":18,"nanosecond":503000000},"bytes":{"transmitted":"911","received":"911"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":18,"nanosecond":503000000},"bytes":{"transmitted":"911","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":443000000},"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":443000000},"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":443000000},"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":285000000},"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":285000000},"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":285000000},"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":285000000},"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":443000000},"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":14,"nanosecond":944000000},"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":285000000},"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":14,"nanosecond":944000000},"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":285000000},"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":285000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":285000000},"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":285000000},"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":285000000},"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":285000000},"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":285000000},"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":14,"nanosecond":944000000},"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":17,"nanosecond":952000000},"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":14,"nanosecond":944000000},"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":17,"nanosecond":952000000},"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":17,"nanosecond":952000000},"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":17,"nanosecond":952000000},"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":14,"nanosecond":944000000},"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":17,"nanosecond":952000000},"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":14,"nanosecond":944000000},"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":17,"nanosecond":951000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":951000000},"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":17,"nanosecond":951000000},"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":452000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":452000000},"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":452000000},"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":452000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":451000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":451000000},"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":451000000},"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":451000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":451000000},"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":14,"nanosecond":944000000},"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":451000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":450000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":450000000},"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":450000000},"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":14,"nanosecond":944000000},"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":445000000},"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":445000000},"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":445000000},"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":445000000},"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":445000000},"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":14,"nanosecond":944000000},"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":445000000},"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":445000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":14,"nanosecond":944000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":444000000},"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":14,"nanosecond":944000000},"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":444000000},"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":444000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":14,"nanosecond":944000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":444000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":952000000},"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":16,"nanosecond":951000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":951000000},"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":16,"nanosecond":951000000},"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":16,"nanosecond":951000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":951000000},"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":16,"nanosecond":950000000},"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":16,"nanosecond":950000000},"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":16,"nanosecond":950000000},"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":16,"nanosecond":950000000},"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":16,"nanosecond":950000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":949000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":949000000},"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":14,"nanosecond":944000000},"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":16,"nanosecond":949000000},"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":16,"nanosecond":949000000},"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":16,"nanosecond":949000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":948000000},"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":16,"nanosecond":947000000},"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":451000000},"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":451000000},"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":14,"nanosecond":944000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":14,"nanosecond":944000000},"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":450000000},"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":450000000},"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":450000000},"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":14,"nanosecond":944000000},"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":450000000},"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":450000000},"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":449000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":446000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":949000000},"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":15,"nanosecond":948000000},"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":15,"nanosecond":948000000},"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":15,"nanosecond":948000000},"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":15,"nanosecond":948000000},"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":15,"nanosecond":948000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":14,"nanosecond":943000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":444000000},"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":444000000},"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":443000000},"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":443000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:33.077Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:35.055877" elapsed="0.010033"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:35.069308" level="INFO">Item found from container 303 times.</msg>
<msg time="2026-07-28T01:57:35.069395" 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-07-28T01:57:35.066119" elapsed="0.003301"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-07-28T01:57:35.070014" 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-07-28T01:57:35.069640" elapsed="0.000449">303 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-07-28T01:57:35.016162" elapsed="0.054039">303 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:36.133014" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:36.135679" level="INFO">GET Response : url=http://10.30.170.50: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":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:57:36.136877" 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-07-28T01:57:36.072113" elapsed="0.064848"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:36.143198" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":32000000}},"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":3,"nanosecond":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":995000000}},"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":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":3,"nanosecond":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":37000000}},"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":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":37000000}},"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":28000000}},"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":37000000}},"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":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":17000000}},"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":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":3,"nanosecond":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":29000000}},"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":16000000}},"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":37000000}},"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":29000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":3,"nanosecond":41000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":28000000}},"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":26000000}},"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":27000000}},"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":3,"nanosecond":25000000}},"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":27000000}},"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":25000000}},"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":28000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":101,"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-07-28T01:57:34.285Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":750000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"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":19,"nanosecond":211000000},"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":16,"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":16,"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":16,"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":18,"nanosecond":712000000},"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":16,"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":16,"nanosecond":197000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":197000000},"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":18,"nanosecond":711000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":711000000},"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":18,"nanosecond":710000000},"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":18,"nanosecond":710000000},"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":16,"nanosecond":194000000},"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":16,"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":16,"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":16,"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":709000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"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":18,"nanosecond":211000000},"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":18,"nanosecond":209000000},"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":16,"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":18,"nanosecond":207000000},"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":18,"nanosecond":207000000},"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":18,"nanosecond":206000000},"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":16,"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":18,"nanosecond":206000000},"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":18,"nanosecond":206000000},"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":18,"nanosecond":205000000},"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":18,"nanosecond":205000000},"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":18,"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":18,"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":16,"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":18,"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":16,"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":18,"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":16,"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":18,"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":18,"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":18,"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":202000000},"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":18,"nanosecond":202000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":16,"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":706000000},"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":17,"nanosecond":705000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":210000000},"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":17,"nanosecond":207000000},"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":17,"nanosecond":205000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":705000000},"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":16,"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":704000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:34.324Z"}},{"id":"openflow:1","flow-node-inventory:port-number":58940,"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":24000000}},"flags":"SEND_FLOW_REM"},{"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"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":3,"nanosecond":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":8000000}},"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":8000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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-07-28T01:57:36.033Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":21,"nanosecond":496000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":446000000},"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":446000000},"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":446000000},"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":289000000},"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":289000000},"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":289000000},"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":289000000},"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":446000000},"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":17,"nanosecond":942000000},"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":289000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":451000000},"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":451000000},"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":17,"nanosecond":939000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":450000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":447000000},"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":447000000},"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":446000000},"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":446000000},"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":446000000},"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":17,"nanosecond":939000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.069Z"}},{"id":"openflow:2","flow-node-inventory:port-number":58942,"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":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":3,"nanosecond":38000000}},"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":38000000}},"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":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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":25000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":15000000}},"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":15000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":"14","byte-count":"1100","duration":{"second":3,"nanosecond":29000000}},"flags":"SEND_FLOW_REM"},{"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":10000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":7000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"29","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-07-28T01:57:36.040Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":21,"nanosecond":500000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":21,"nanosecond":502000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":449000000},"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":449000000},"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":449000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":449000000},"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":17,"nanosecond":950000000},"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":291000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":458000000},"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":458000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":958000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":953000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":455000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":452000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":454000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":17,"nanosecond":949000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":450000000},"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":450000000},"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":449000000},"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":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}]}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:36.137628" elapsed="0.011484"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:36.153190" level="INFO">Item found from container 301 times.</msg>
<msg time="2026-07-28T01:57:36.153299" level="INFO">${count} = 301</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-07-28T01:57:36.149355" elapsed="0.003970"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-07-28T01:57:36.154125" level="FAIL">301 != 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-07-28T01:57:36.153651" elapsed="0.000571">301 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-07-28T01:57:36.071113" elapsed="0.083251">301 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:37.202981" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:37.205318" level="INFO">GET Response : url=http://10.30.170.50: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":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":"... (set the log level to DEBUG or TRACE to see the full content) 
 </msg>
<msg time="2026-07-28T01:57:37.205900" 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-07-28T01:57:37.156675" elapsed="0.049293"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:37.211791" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":58918,"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":3,"nanosecond":36000000}},"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":17000000}},"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":36000000}},"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":17000000}},"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":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":3,"nanosecond":17000000}},"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":17000000}},"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":29000000}},"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":21000000}},"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":19000000}},"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":29000000}},"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":18000000}},"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":29000000}},"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":18000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":32000000}},"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":3,"nanosecond":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":998000000}},"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":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":3,"nanosecond":36000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":2,"nanosecond":995000000}},"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":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":3,"nanosecond":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":37000000}},"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":35000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":37000000}},"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":28000000}},"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":37000000}},"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":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":17000000}},"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":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":3,"nanosecond":32000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":29000000}},"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":16000000}},"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":37000000}},"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":29000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":993000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":3,"nanosecond":41000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":994000000}},"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":2,"nanosecond":995000000}},"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":2,"nanosecond":994000000}},"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":28000000}},"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":28000000}},"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":26000000}},"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":27000000}},"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":3,"nanosecond":25000000}},"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":27000000}},"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":25000000}},"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":28000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"18","active-flows":101,"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-07-28T01:57:34.285Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":750000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":19,"nanosecond":752000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":704000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":704000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":204000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":19,"nanosecond":548000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":16,"nanosecond":203000000},"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":19,"nanosecond":211000000},"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":16,"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":19,"nanosecond":211000000},"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":16,"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":16,"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":16,"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":19,"nanosecond":211000000},"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":18,"nanosecond":712000000},"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":16,"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":16,"nanosecond":197000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":18,"nanosecond":712000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":197000000},"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":18,"nanosecond":711000000},"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":16,"nanosecond":197000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":711000000},"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":18,"nanosecond":710000000},"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":18,"nanosecond":710000000},"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":16,"nanosecond":194000000},"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":16,"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":16,"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":16,"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":16,"nanosecond":194000000},"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":18,"nanosecond":709000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":709000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":708000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":708000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":707000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":193000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":16,"nanosecond":192000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":18,"nanosecond":703000000},"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":16,"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":18,"nanosecond":211000000},"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":18,"nanosecond":209000000},"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":16,"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":18,"nanosecond":207000000},"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":18,"nanosecond":207000000},"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":18,"nanosecond":206000000},"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":16,"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":18,"nanosecond":206000000},"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":18,"nanosecond":206000000},"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":18,"nanosecond":205000000},"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":18,"nanosecond":205000000},"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":18,"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":18,"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":16,"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":18,"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":16,"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":18,"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":16,"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":18,"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":18,"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":18,"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":203000000},"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":18,"nanosecond":202000000},"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":18,"nanosecond":202000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":16,"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":17,"nanosecond":709000000},"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":17,"nanosecond":709000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":707000000},"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":17,"nanosecond":706000000},"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":17,"nanosecond":705000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":16,"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":704000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":703000000},"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":17,"nanosecond":210000000},"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":17,"nanosecond":207000000},"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":17,"nanosecond":205000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":204000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":203000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":17,"nanosecond":202000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":709000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":708000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":706000000},"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":16,"nanosecond":705000000},"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":16,"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":705000000},"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":16,"nanosecond":704000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:34.324Z"}},{"id":"openflow:1","flow-node-inventory:port-number":58940,"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":24000000}},"flags":"SEND_FLOW_REM"},{"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"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":3,"nanosecond":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":8000000}},"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":8000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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-07-28T01:57:36.033Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":21,"nanosecond":496000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":446000000},"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":446000000},"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":446000000},"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":289000000},"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":289000000},"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":289000000},"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":289000000},"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":446000000},"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":17,"nanosecond":942000000},"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":289000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":451000000},"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":451000000},"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":17,"nanosecond":939000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":450000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":447000000},"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":447000000},"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":446000000},"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":446000000},"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":446000000},"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":17,"nanosecond":939000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.069Z"}},{"id":"openflow:2","flow-node-inventory:port-number":58942,"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":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":3,"nanosecond":38000000}},"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":38000000}},"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":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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":25000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":15000000}},"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":15000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":"14","byte-count":"1100","duration":{"second":3,"nanosecond":29000000}},"flags":"SEND_FLOW_REM"},{"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":10000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":7000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"29","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-07-28T01:57:36.040Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":21,"nanosecond":500000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":21,"nanosecond":502000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":449000000},"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":449000000},"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":449000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":449000000},"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":17,"nanosecond":950000000},"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":291000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":458000000},"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":458000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":958000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":953000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":455000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":452000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":454000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":17,"nanosecond":949000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":450000000},"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":450000000},"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":449000000},"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":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.080Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:37.206572" elapsed="0.011448"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:37.221540" level="INFO">Item found from container 301 times.</msg>
<msg time="2026-07-28T01:57:37.221643" level="INFO">${count} = 301</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-07-28T01:57:37.218277" elapsed="0.003392"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-07-28T01:57:37.222284" level="FAIL">301 != 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-07-28T01:57:37.221878" elapsed="0.000482">301 != 300</status>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="FAIL" start="2026-07-28T01:57:37.155547" elapsed="0.066957">301 != 300</status>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:57:38.267197" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:38.269752" level="INFO">GET Response : url=http://10.30.170.50: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":58918,"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":6,"nanosecond":77000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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-07-28T01:57:38.270289" 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-07-28T01:57:38.224839" elapsed="0.045596"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.276821" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":58918,"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":6,"nanosecond":77000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":71000000}},"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":6,"nanosecond":71000000}},"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":6,"nanosecond":68000000}},"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":6,"nanosecond":68000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":63000000}},"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":6,"nanosecond":63000000}},"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":6,"nanosecond":62000000}},"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":6,"nanosecond":61000000}},"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":6,"nanosecond":57000000}},"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":6,"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":6,"nanosecond":54000000}},"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":6,"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":52000000}},"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":6,"nanosecond":34000000}},"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":"7","byte-count":"535","duration":{"second":6,"nanosecond":68000000}},"flags":"SEND_FLOW_REM"},{"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":6,"nanosecond":34000000}},"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":6,"nanosecond":34000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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-07-28T01:57:37.325Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":790000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":792000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":792000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":19,"nanosecond":739000000},"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":19,"nanosecond":739000000},"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":19,"nanosecond":739000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":739000000},"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":19,"nanosecond":239000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":239000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":238000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":233000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":233000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":21,"nanosecond":747000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":232000000},"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":21,"nanosecond":747000000},"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":21,"nanosecond":747000000},"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":21,"nanosecond":747000000},"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":19,"nanosecond":232000000},"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":19,"nanosecond":232000000},"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":21,"nanosecond":746000000},"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":19,"nanosecond":232000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":746000000},"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":21,"nanosecond":745000000},"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":21,"nanosecond":745000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":744000000},"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":21,"nanosecond":743000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":227000000},"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":19,"nanosecond":227000000},"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":19,"nanosecond":227000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":246000000},"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":21,"nanosecond":244000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":242000000},"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":21,"nanosecond":242000000},"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":21,"nanosecond":241000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":241000000},"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":21,"nanosecond":241000000},"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":21,"nanosecond":240000000},"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":21,"nanosecond":240000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":237000000},"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":21,"nanosecond":237000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":744000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":741000000},"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":20,"nanosecond":740000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":245000000},"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":20,"nanosecond":242000000},"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":20,"nanosecond":240000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":238000000},"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":20,"nanosecond":238000000},"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":20,"nanosecond":237000000},"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":20,"nanosecond":237000000},"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":20,"nanosecond":237000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":741000000},"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":19,"nanosecond":741000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":224000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":739000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:37.364Z"}},{"id":"openflow:1","flow-node-inventory:port-number":58940,"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":24000000}},"flags":"SEND_FLOW_REM"},{"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"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":3,"nanosecond":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":8000000}},"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":8000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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-07-28T01:57:36.033Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":21,"nanosecond":496000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":446000000},"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":446000000},"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":446000000},"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":289000000},"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":289000000},"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":289000000},"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":289000000},"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":446000000},"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":17,"nanosecond":942000000},"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":289000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":451000000},"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":451000000},"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":17,"nanosecond":939000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":450000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":447000000},"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":447000000},"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":446000000},"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":446000000},"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":446000000},"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":17,"nanosecond":939000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.069Z"}},{"id":"openflow:2","flow-node-inventory:port-number":58942,"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":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":3,"nanosecond":38000000}},"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":38000000}},"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":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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":25000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":15000000}},"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":15000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":"14","byte-count":"1100","duration":{"second":3,"nanosecond":29000000}},"flags":"SEND_FLOW_REM"},{"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":10000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":7000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"29","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-07-28T01:57:36.040Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":21,"nanosecond":500000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":21,"nanosecond":502000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":449000000},"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":449000000},"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":449000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":449000000},"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":17,"nanosecond":950000000},"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":291000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":458000000},"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":458000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":958000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":953000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":455000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":452000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":454000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":17,"nanosecond":949000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":450000000},"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":450000000},"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":449000000},"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":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.080Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:38.271054" elapsed="0.011428"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.286063" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-07-28T01:57:38.286183" 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-07-28T01:57:38.282711" elapsed="0.003499"/>
</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-07-28T01:57:38.286418" elapsed="0.000375"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:57:38.223702" elapsed="0.063162"/>
</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-07-28T01:57:35.015291" elapsed="3.271621"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:35.013888" elapsed="3.273186"/>
</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-07-28T01:57:38.325803" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:57:38.328021" level="INFO">GET Response : url=http://10.30.170.50: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":58918,"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":6,"nanosecond":77000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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-07-28T01:57:38.328549" 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-07-28T01:57:38.288366" elapsed="0.040273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.334214" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":58918,"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":6,"nanosecond":77000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":74000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":73000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":72000000}},"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":6,"nanosecond":71000000}},"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":6,"nanosecond":71000000}},"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":6,"nanosecond":68000000}},"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":6,"nanosecond":68000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":65000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":64000000}},"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":6,"nanosecond":63000000}},"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":6,"nanosecond":63000000}},"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":6,"nanosecond":62000000}},"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":6,"nanosecond":61000000}},"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":6,"nanosecond":57000000}},"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":6,"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":6,"nanosecond":54000000}},"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":6,"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":53000000}},"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":6,"nanosecond":52000000}},"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":6,"nanosecond":34000000}},"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":"7","byte-count":"535","duration":{"second":6,"nanosecond":68000000}},"flags":"SEND_FLOW_REM"},{"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":6,"nanosecond":34000000}},"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":6,"nanosecond":34000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":31000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":30000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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":6,"nanosecond":29000000}},"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-07-28T01:57:37.325Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":790000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":792000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":792000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":19,"nanosecond":739000000},"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":19,"nanosecond":739000000},"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":19,"nanosecond":739000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":739000000},"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":19,"nanosecond":239000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":239000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":238000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":22,"nanosecond":583000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":238000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":233000000},"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":22,"nanosecond":246000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":233000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":22,"nanosecond":246000000},"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":21,"nanosecond":747000000},"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":19,"nanosecond":233000000},"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":19,"nanosecond":232000000},"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":21,"nanosecond":747000000},"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":21,"nanosecond":747000000},"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":21,"nanosecond":747000000},"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":19,"nanosecond":232000000},"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":19,"nanosecond":232000000},"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":21,"nanosecond":746000000},"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":19,"nanosecond":232000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":746000000},"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":21,"nanosecond":745000000},"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":21,"nanosecond":745000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":19,"nanosecond":229000000},"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":21,"nanosecond":744000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":744000000},"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":21,"nanosecond":743000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":743000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":743000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":742000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":19,"nanosecond":228000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":227000000},"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":19,"nanosecond":227000000},"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":19,"nanosecond":227000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":21,"nanosecond":738000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":246000000},"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":21,"nanosecond":244000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":242000000},"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":21,"nanosecond":242000000},"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":21,"nanosecond":241000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":241000000},"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":21,"nanosecond":241000000},"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":21,"nanosecond":240000000},"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":21,"nanosecond":240000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":19,"nanosecond":224000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":239000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":238000000},"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":21,"nanosecond":237000000},"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":21,"nanosecond":237000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":744000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":744000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":742000000},"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":20,"nanosecond":741000000},"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":20,"nanosecond":740000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":19,"nanosecond":224000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":739000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":738000000},"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":20,"nanosecond":245000000},"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":20,"nanosecond":242000000},"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":20,"nanosecond":240000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":239000000},"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":20,"nanosecond":238000000},"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":20,"nanosecond":238000000},"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":20,"nanosecond":237000000},"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":20,"nanosecond":237000000},"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":20,"nanosecond":237000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":744000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":743000000},"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":19,"nanosecond":741000000},"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":19,"nanosecond":741000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":224000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":740000000},"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":19,"nanosecond":739000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:37.364Z"}},{"id":"openflow:1","flow-node-inventory:port-number":58940,"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":33000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":32000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":"7","byte-count":"535","duration":{"second":3,"nanosecond":24000000}},"flags":"SEND_FLOW_REM"},{"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":31000000}},"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":31000000}},"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":31000000}},"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":31000000}},"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":24000000}},"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":24000000}},"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":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"nanosecond":24000000}},"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":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":3,"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":3,"nanosecond":24000000}},"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":24000000}},"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":23000000}},"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":23000000}},"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":22000000}},"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":22000000}},"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":22000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":8000000}},"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":8000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":997000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"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":2,"nanosecond":996000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"15","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-07-28T01:57:36.033Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":21,"nanosecond":496000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":446000000},"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":446000000},"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":446000000},"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":289000000},"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":289000000},"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":289000000},"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":289000000},"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":446000000},"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":17,"nanosecond":942000000},"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":289000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":17,"nanosecond":942000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":288000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":942000000},"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":20,"nanosecond":953000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":953000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":20,"nanosecond":952000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":450000000},"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":450000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":449000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":17,"nanosecond":939000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":447000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":17,"nanosecond":939000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":19,"nanosecond":950000000},"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":451000000},"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":451000000},"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":17,"nanosecond":939000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":17,"nanosecond":939000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":448000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":950000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":18,"nanosecond":949000000},"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":450000000},"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":449000000},"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":449000000},"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":448000000},"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":448000000},"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":448000000},"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":447000000},"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":447000000},"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":446000000},"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":446000000},"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":446000000},"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":17,"nanosecond":939000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"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":446000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.069Z"}},{"id":"openflow:2","flow-node-inventory:port-number":58942,"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":43000000}},"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":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":3,"nanosecond":38000000}},"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":38000000}},"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":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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"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":3,"nanosecond":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":30000000}},"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":25000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":16000000}},"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":15000000}},"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":15000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":13000000}},"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":"14","byte-count":"1100","duration":{"second":3,"nanosecond":29000000}},"flags":"SEND_FLOW_REM"},{"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":10000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":9000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":8000000}},"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":7000000}},"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":7000000}},"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":7000000}},"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":7000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"29","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-07-28T01:57:36.040Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":21,"nanosecond":500000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":21,"nanosecond":503000000},"bytes":{"transmitted":"996","received":"996"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":21,"nanosecond":502000000},"bytes":{"transmitted":"996","received":"656"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":449000000},"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":449000000},"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":449000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":449000000},"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":17,"nanosecond":950000000},"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":291000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":291000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":958000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":20,"nanosecond":957000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":458000000},"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":458000000},"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":458000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":451000000},"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":17,"nanosecond":950000000},"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":451000000},"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":451000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":17,"nanosecond":950000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":450000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":958000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":957000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":957000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":19,"nanosecond":956000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":17,"nanosecond":950000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":955000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":954000000},"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":19,"nanosecond":953000000},"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":457000000},"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":457000000},"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":17,"nanosecond":950000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":457000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":456000000},"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":17,"nanosecond":950000000},"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":456000000},"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":456000000},"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":455000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":452000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":955000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":18,"nanosecond":954000000},"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":455000000},"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":455000000},"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":454000000},"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":454000000},"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":454000000},"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":454000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":453000000},"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":17,"nanosecond":949000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":452000000},"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":450000000},"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":450000000},"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":449000000},"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":449000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:57:36.080Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:38.329168" elapsed="0.010477"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.343215" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-07-28T01:57:38.343307" 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-07-28T01:57:38.339888" elapsed="0.003445"/>
</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-07-28T01:57:38.343593" elapsed="0.000402"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:57:38.287988" elapsed="0.056084"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:38.287291" elapsed="0.056912"/>
</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-07-28T01:57:38.345829" elapsed="0.000151"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:38.345551" elapsed="0.000466"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:38.345524" elapsed="0.000555"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.346589" 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-07-28T01:57:38.346266" elapsed="0.000350"/>
</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-07-28T01:57:38.347629" elapsed="0.000179"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:38.347332" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:38.347314" elapsed="0.000556"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.351559" 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-07-28T01:57:38.348013" elapsed="0.003604"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.434229" 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-07-28T01:57:38.434512" 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-07-28T01:57:38.351847" elapsed="0.082696"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:38.434637" elapsed="0.000067"/>
</return>
<msg time="2026-07-28T01:57:38.434914" 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-07-28T01:57:38.346990" elapsed="0.087954"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-07-28T01:57:38.435635" 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-07-28T01:57:38.435235" elapsed="0.000427"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.436470" 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-07-28T01:57:38.435832" elapsed="0.000678"/>
</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-07-28T01:57:38.436770" elapsed="0.000439"/>
</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-07-28T01:57:38.345144" elapsed="0.092133"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:57:38.344480" elapsed="0.092930"/>
</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-07-28T01:57:38.444620" 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-07-28T01:57:38.444201" elapsed="0.000482"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.445196" 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-07-28T01:57:38.444854" elapsed="0.000368"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:38.445267" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:57:38.445430" 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-07-28T01:57:38.443675" elapsed="0.001796"/>
</kw>
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.446579" 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-07-28T01:57:38.446138" elapsed="0.000468"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.447188" 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-07-28T01:57:38.446885" elapsed="0.000329"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:38.447259" elapsed="0.000065"/>
</return>
<msg time="2026-07-28T01:57:38.447471" 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-07-28T01:57:38.445723" elapsed="0.001775"/>
</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-07-28T01:57:38.449153" 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-07-28T01:57:38.448724" elapsed="0.000456"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.449695" 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-07-28T01:57:38.449340" elapsed="0.000381"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:38.449765" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:38.449957" 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-07-28T01:57:38.448290" elapsed="0.001694"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:38.451210" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:38.450893" elapsed="0.000343"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.452162" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:38.452264" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:38.452019" elapsed="0.000309"/>
</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-07-28T01:57:38.456625" elapsed="0.000106"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:38.455632" elapsed="0.001178"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:38.455446" elapsed="0.001446"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.457234" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:38.457479" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:38.457085" elapsed="0.000549"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.458742" level="INFO">Attempting to execute command "/tmp/karaf-0.22.3/bin/stop" on remote system "10.30.170.50" 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-07-28T01:57:38.457897" elapsed="0.000910"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.460005" 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-07-28T01:57:38.459113" elapsed="0.001003"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:38.462582" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:38.462762" 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-07-28T01:57:38.462114" elapsed="0.000691"/>
</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-07-28T01:57:38.463653" elapsed="0.000569"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.465942" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:38.789062" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:30 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:38.465577" elapsed="0.323946"/>
</kw>
<msg time="2026-07-28T01:57:38.789669" 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-07-28T01:57:38.465033" elapsed="0.324759"/>
</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-07-28T01:57:38.460609" elapsed="0.329345"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:38.790852" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/stop'.</msg>
<msg time="2026-07-28T01:57:39.210886" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:39.211614" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:39.212003" 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-07-28T01:57:38.790383" elapsed="0.421863"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:39.213332" elapsed="0.000859"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.217179" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:39.215661" elapsed="0.001674"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:39.218535" elapsed="0.000092"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:39.217925" elapsed="0.000831"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.217867" elapsed="0.001079"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:39.219694" elapsed="0.000110"/>
</return>
<status status="PASS" start="2026-07-28T01:57:39.219166" elapsed="0.000769"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.219123" elapsed="0.001009"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:39.220294" 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-07-28T01:57:39.227038" elapsed="0.000169"/>
</kw>
<msg time="2026-07-28T01:57:39.227283" 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-07-28T01:57:39.226294" elapsed="0.001100"/>
</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-07-28T01:57:39.228380" elapsed="0.000060"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:39.229428" elapsed="0.000087"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:39.221135" elapsed="0.008464"/>
</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-07-28T01:57:38.454444" elapsed="0.775384"/>
</kw>
<msg time="2026-07-28T01:57:39.229885" 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-07-28T01:57:38.453692" elapsed="0.776249"/>
</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-07-28T01:57:38.453063" elapsed="0.776989"/>
</kw>
<msg time="2026-07-28T01:57:39.230098" 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-07-28T01:57:38.452506" elapsed="0.777654"/>
</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-07-28T01:57:39.233634" elapsed="0.000145"/>
</kw>
<msg time="2026-07-28T01:57:39.233824" 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-07-28T01:57:39.232988" elapsed="0.000903"/>
</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-07-28T01:57:39.234078" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:39.234242" elapsed="0.000023"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:39.230478" elapsed="0.003850"/>
</kw>
<msg time="2026-07-28T01:57:39.234436" 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-07-28T01:57:38.451511" elapsed="0.782964"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.234928" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:39.234671" elapsed="0.000311"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:39.235026" 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-07-28T01:57:38.450428" elapsed="0.784784"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:57:38.450203" elapsed="0.785052"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-07-28T01:57:38.450049" elapsed="0.785250"/>
</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-07-28T01:57:38.447744" elapsed="0.787617"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.235875" 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-07-28T01:57:39.235549" elapsed="0.000353"/>
</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-07-28T01:57:39.236061" elapsed="0.000230"/>
</kw>
<if>
<branch type="IF" condition="not ${confirm}">
<return>
<value>${updated_index_list}</value>
<status status="NOT RUN" start="2026-07-28T01:57:39.236518" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:39.236378" elapsed="0.000187"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.236348" elapsed="0.000240"/>
</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-07-28T01:57:39.238730" 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-07-28T01:57:39.238398" elapsed="0.000358"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:39.239712" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:39.239383" elapsed="0.000356"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:39.240544" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:39.240648" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:39.240408" 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-07-28T01:57:39.246751" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:39.246411" elapsed="0.000399"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.246387" elapsed="0.000448"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:39.247101" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:39.247217" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:39.246989" elapsed="0.000254"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.247825" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.50" 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-07-28T01:57:39.247401" elapsed="0.000483"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:39.248438" 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-07-28T01:57:39.248041" elapsed="0.000439"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.249414" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:39.249537" 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-07-28T01:57:39.249132" 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-07-28T01:57:39.249728" elapsed="0.000367"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:39.251103" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:39.561314" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:38 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:39.250761" elapsed="0.310857"/>
</kw>
<msg time="2026-07-28T01:57:39.561710" 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-07-28T01:57:39.250292" elapsed="0.311530"/>
</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-07-28T01:57:39.248704" elapsed="0.313240"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:39.562509" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-07-28T01:57:39.585137" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:39.585388" level="INFO">${stdout} = 1</msg>
<msg time="2026-07-28T01:57:39.585526" 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-07-28T01:57:39.562209" elapsed="0.023374"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:39.585956" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.587587" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:39.586939" 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-07-28T01:57:39.588159" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:39.587859" elapsed="0.000408"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.587807" elapsed="0.000512"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:39.588710" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-07-28T01:57:39.588438" elapsed="0.000409"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:39.588404" elapsed="0.000497"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:39.588977" 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-07-28T01:57:39.594660" elapsed="0.000198"/>
</kw>
<msg time="2026-07-28T01:57:39.594919" 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-07-28T01:57:39.593950" elapsed="0.001077"/>
</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-07-28T01:57:39.595254" elapsed="0.000031"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:39.595506" elapsed="0.000031"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:39.589718" elapsed="0.005906"/>
</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-07-28T01:57:39.245685" elapsed="0.350173"/>
</kw>
<msg time="2026-07-28T01:57:39.595952" 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-07-28T01:57:39.242271" elapsed="0.353829"/>
</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-07-28T01:57:39.241381" elapsed="0.354995"/>
</kw>
<msg time="2026-07-28T01:57:39.596439" 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-07-28T01:57:39.240836" elapsed="0.355702"/>
</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-07-28T01:57:39.600549" elapsed="0.000194"/>
</kw>
<msg time="2026-07-28T01:57:39.600854" 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-07-28T01:57:39.599999" elapsed="0.000920"/>
</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-07-28T01:57:39.601080" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:39.601242" 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-07-28T01:57:39.596949" elapsed="0.004374"/>
</kw>
<msg time="2026-07-28T01:57:39.601413" 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-07-28T01:57:39.239966" elapsed="0.361472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.601921" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:39.601672" elapsed="0.000293"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:39.602007" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:39.602209" 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-07-28T01:57:39.238974" elapsed="0.363260"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-07-28T01:57:39.602282" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:57:39.602429" 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-07-28T01:57:39.238009" elapsed="0.364462"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-07-28T01:57:39.603060" 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-07-28T01:57:39.602635" elapsed="0.000503">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-07-28T01:57:39.237598" elapsed="0.365654">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-07-28T01:57:41.607303" 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-07-28T01:57:41.606251" elapsed="0.001139"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:41.609319" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:41.608827" elapsed="0.000534"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:41.610650" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:41.610851" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:41.610438" elapsed="0.000454"/>
</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-07-28T01:57:41.617407" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:41.617037" elapsed="0.000456"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:41.617011" elapsed="0.000510"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:41.617825" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:41.617929" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:41.617711" elapsed="0.000280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:41.618603" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.50" 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-07-28T01:57:41.618150" elapsed="0.000502"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:41.619289" 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-07-28T01:57:41.618852" elapsed="0.000464"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:41.620327" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:41.620439" 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-07-28T01:57:41.620029" elapsed="0.000452"/>
</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-07-28T01:57:41.620648" elapsed="0.000366"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:41.622043" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:41.943325" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:39 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:41.621681" elapsed="0.321832"/>
</kw>
<msg time="2026-07-28T01:57:41.943639" 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-07-28T01:57:41.621222" elapsed="0.322627"/>
</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-07-28T01:57:41.619553" elapsed="0.324420"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:41.944519" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-07-28T01:57:41.967422" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:41.967768" level="INFO">${stdout} = 1</msg>
<msg time="2026-07-28T01:57:41.967908" 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-07-28T01:57:41.944248" elapsed="0.023714"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:41.968405" elapsed="0.000539"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:41.970207" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:41.969508" elapsed="0.000827"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:41.970876" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:41.970542" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:41.970491" 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-07-28T01:57:41.971481" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-07-28T01:57:41.971178" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:41.971139" elapsed="0.000617"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:41.971835" 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-07-28T01:57:41.977048" elapsed="0.000218"/>
</kw>
<msg time="2026-07-28T01:57:41.977327" 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-07-28T01:57:41.976295" elapsed="0.001139"/>
</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-07-28T01:57:41.977803" elapsed="0.000070"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:41.978106" elapsed="0.000031"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:41.972470" elapsed="0.005757"/>
</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-07-28T01:57:41.616269" elapsed="0.362253"/>
</kw>
<msg time="2026-07-28T01:57:41.978622" 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-07-28T01:57:41.613394" elapsed="0.365379"/>
</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-07-28T01:57:41.612041" elapsed="0.367038"/>
</kw>
<msg time="2026-07-28T01:57:41.979139" 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-07-28T01:57:41.611189" elapsed="0.368031"/>
</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-07-28T01:57:41.983161" elapsed="0.000220"/>
</kw>
<msg time="2026-07-28T01:57:41.983529" 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-07-28T01:57:41.982443" elapsed="0.001156"/>
</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-07-28T01:57:41.983781" elapsed="0.000060"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:41.984007" 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-07-28T01:57:41.979734" elapsed="0.004360"/>
</kw>
<msg time="2026-07-28T01:57:41.984199" 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-07-28T01:57:41.609748" elapsed="0.374478"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:41.984742" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:41.984441" elapsed="0.000351"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:41.984836" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:41.985005" 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-07-28T01:57:41.608054" elapsed="0.376977"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-07-28T01:57:41.985136" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:41.985292" 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-07-28T01:57:41.605316" elapsed="0.380013"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-07-28T01:57:41.986021" 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-07-28T01:57:41.985577" elapsed="0.000532">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-07-28T01:57:41.604127" elapsed="0.382096">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-07-28T01:57:43.989984" 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-07-28T01:57:43.989155" elapsed="0.000901"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:43.991934" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:43.991526" elapsed="0.000450"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:43.993135" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:43.993284" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:43.992953" elapsed="0.000411"/>
</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-07-28T01:57:43.999634" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:43.999262" elapsed="0.000433"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:43.999229" elapsed="0.000492"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:43.999997" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:44.000103" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:43.999884" elapsed="0.000247"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:44.000726" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.50" 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-07-28T01:57:44.000283" elapsed="0.000492"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:44.001338" 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-07-28T01:57:44.000947" elapsed="0.000418"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:44.002327" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:44.002428" 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-07-28T01:57:44.002033" elapsed="0.000434"/>
</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-07-28T01:57:44.002635" elapsed="0.000347"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:44.003875" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:44.311986" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:41 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:44.003549" elapsed="0.308608"/>
</kw>
<msg time="2026-07-28T01:57:44.312246" 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-07-28T01:57:44.003155" elapsed="0.309212"/>
</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-07-28T01:57:44.001615" elapsed="0.311011"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:44.313187" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-07-28T01:57:44.335836" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:44.336112" level="INFO">${stdout} = 1</msg>
<msg time="2026-07-28T01:57:44.336216" 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-07-28T01:57:44.312901" elapsed="0.023371"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:44.336710" elapsed="0.000499"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:44.338380" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:44.337724" elapsed="0.000783"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:44.339072" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:44.338694" elapsed="0.000491"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:44.338641" elapsed="0.000597"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:44.339680" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-07-28T01:57:44.339363" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:44.339325" elapsed="0.000571"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:44.339981" 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">
<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-07-28T01:57:44.347176" elapsed="0.000202"/>
</kw>
<msg time="2026-07-28T01:57:44.347424" 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-07-28T01:57:44.346090" elapsed="0.001431"/>
</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-07-28T01:57:44.347703" elapsed="0.000024"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:44.347880" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:44.340811" elapsed="0.007163"/>
</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-07-28T01:57:43.998259" elapsed="0.349899"/>
</kw>
<msg time="2026-07-28T01:57:44.348229" 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-07-28T01:57:43.995769" elapsed="0.352588"/>
</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-07-28T01:57:43.994565" elapsed="0.354132"/>
</kw>
<msg time="2026-07-28T01:57:44.348742" 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-07-28T01:57:43.993625" elapsed="0.355168"/>
</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-07-28T01:57:44.352293" elapsed="0.000242"/>
</kw>
<msg time="2026-07-28T01:57:44.352647" 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-07-28T01:57:44.351614" elapsed="0.001111"/>
</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-07-28T01:57:44.352904" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:44.353169" 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-07-28T01:57:44.349104" elapsed="0.004156"/>
</kw>
<msg time="2026-07-28T01:57:44.353366" 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-07-28T01:57:43.992305" elapsed="0.361088"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:44.353898" level="INFO">1</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:44.353622" elapsed="0.000321"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:44.353986" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:44.354155" 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-07-28T01:57:43.990639" elapsed="0.363542"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-07-28T01:57:44.354238" elapsed="0.000027"/>
</return>
<msg time="2026-07-28T01:57:44.354392" 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-07-28T01:57:43.988263" elapsed="0.366154"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<msg time="2026-07-28T01:57:44.355116" 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-07-28T01:57:44.354658" elapsed="0.000537">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-07-28T01:57:43.987110" elapsed="0.368211">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-07-28T01:57:46.359577" 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-07-28T01:57:46.358561" elapsed="0.001091"/>
</kw>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:46.361815" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:46.361347" elapsed="0.000551"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.363099" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:46.363252" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:46.362871" elapsed="0.000419"/>
</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-07-28T01:57:46.370045" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:46.369705" elapsed="0.000434"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:46.369678" elapsed="0.000488"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.370434" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:46.370607" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:46.370321" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.371239" level="INFO">Attempting to execute command "ps axf | grep org.apache.karaf | grep -v grep | wc -l" on remote system "10.30.170.50" 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-07-28T01:57:46.370797" elapsed="0.000492"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.371934" 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-07-28T01:57:46.371503" elapsed="0.000459"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.372979" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:46.373060" 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-07-28T01:57:46.372691" 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-07-28T01:57:46.373283" elapsed="0.000411"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.374748" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:46.705870" 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 Tue Jul 28 01:56:46 UTC 2026

  System load:  0.26               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 10%                IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:44 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:46.374298" elapsed="0.331779"/>
</kw>
<msg time="2026-07-28T01:57:46.706169" 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-07-28T01:57:46.373874" elapsed="0.332397"/>
</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-07-28T01:57:46.372220" elapsed="0.334174"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.707047" level="INFO">Executing command 'ps axf | grep org.apache.karaf | grep -v grep | wc -l'.</msg>
<msg time="2026-07-28T01:57:46.730048" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:46.730395" level="INFO">${stdout} = 0</msg>
<msg time="2026-07-28T01:57:46.730563" 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-07-28T01:57:46.706726" elapsed="0.023896"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:46.731069" elapsed="0.000574"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.733047" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:46.732224" elapsed="0.000984"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:46.733677" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:46.733391" elapsed="0.000362"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:46.733339" elapsed="0.000450"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:46.734030" elapsed="0.000088"/>
</return>
<status status="PASS" start="2026-07-28T01:57:46.733870" elapsed="0.000299"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:46.733848" elapsed="0.000357"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:46.734258" elapsed="0.000021"/>
</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-07-28T01:57:46.740341" elapsed="0.000294"/>
</kw>
<msg time="2026-07-28T01:57:46.740705" 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-07-28T01:57:46.739138" elapsed="0.001705"/>
</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-07-28T01:57:46.741155" elapsed="0.000035"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:46.741398" 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-07-28T01:57:46.734864" elapsed="0.006677"/>
</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-07-28T01:57:46.368636" elapsed="0.373334"/>
</kw>
<msg time="2026-07-28T01:57:46.742072" 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-07-28T01:57:46.365721" elapsed="0.376506"/>
</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-07-28T01:57:46.364364" elapsed="0.378230"/>
</kw>
<msg time="2026-07-28T01:57:46.742658" 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-07-28T01:57:46.363581" elapsed="0.379189"/>
</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-07-28T01:57:46.747373" elapsed="0.000239"/>
</kw>
<msg time="2026-07-28T01:57:46.747764" 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-07-28T01:57:46.746611" elapsed="0.001261"/>
</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-07-28T01:57:46.748039" elapsed="0.000024"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:46.748334" elapsed="0.000027"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:46.743197" elapsed="0.005236"/>
</kw>
<msg time="2026-07-28T01:57:46.748563" 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-07-28T01:57:46.362212" elapsed="0.386378"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.749154" level="INFO">0</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:46.748888" elapsed="0.000314"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:46.749248" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:46.749446" 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-07-28T01:57:46.360194" elapsed="0.389295"/>
</kw>
<return>
<value>${count}</value>
<status status="PASS" start="2026-07-28T01:57:46.749540" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:57:46.749693" 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-07-28T01:57:46.357584" elapsed="0.392134"/>
</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-07-28T01:57:46.749917" elapsed="0.000408"/>
</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-07-28T01:57:46.356223" elapsed="0.394276"/>
</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-07-28T01:57:39.236947" elapsed="7.513611"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:57:39.236783" elapsed="7.513816"/>
</iter>
<var>${index}</var>
<value>@{stop_index_list}</value>
<status status="PASS" start="2026-07-28T01:57:39.236636" elapsed="7.514005"/>
</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-07-28T01:57:46.754158" 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-07-28T01:57:46.753731" elapsed="0.000454"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.754715" 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-07-28T01:57:46.754384" elapsed="0.000357"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:46.754786" elapsed="0.000096"/>
</return>
<msg time="2026-07-28T01:57:46.755028" 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-07-28T01:57:46.753286" elapsed="0.001767"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:57:46.756258" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:46.755949" elapsed="0.000337"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.757153" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:46.757289" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:46.757030" elapsed="0.000287"/>
</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-07-28T01:57:46.761484" elapsed="0.000070"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:46.760510" elapsed="0.001124"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:46.760488" elapsed="0.001229"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.762095" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:46.762373" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:46.761946" elapsed="0.000558"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.763611" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.50" 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-07-28T01:57:46.762771" elapsed="0.000906"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.764904" 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-07-28T01:57:46.763984" elapsed="0.001031"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:46.767493" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:46.767679" 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-07-28T01:57:46.766992" elapsed="0.000775"/>
</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-07-28T01:57:46.768672" elapsed="0.000556"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:46.770908" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:47.410664" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:46 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:46.770534" elapsed="0.640400"/>
</kw>
<msg time="2026-07-28T01:57:47.411083" 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-07-28T01:57:46.770006" elapsed="0.641197"/>
</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-07-28T01:57:46.765508" elapsed="0.645843"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.412255" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-07-28T01:57:47.425432" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:57:47.425850" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:47.426090" 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-07-28T01:57:47.411817" elapsed="0.014445"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:47.426905" elapsed="0.000534"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.429542" 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-07-28T01:57:47.428440" elapsed="0.001216"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:47.430327" elapsed="0.000054"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:47.429960" elapsed="0.000542"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.429917" elapsed="0.000716"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:47.431125" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T01:57:47.430788" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.430760" elapsed="0.000654"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:47.431615" elapsed="0.000027"/>
</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-07-28T01:57:47.438873" elapsed="0.000172"/>
</kw>
<msg time="2026-07-28T01:57:47.439123" 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-07-28T01:57:47.437889" elapsed="0.001355"/>
</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-07-28T01:57:47.440362" elapsed="0.000067"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:47.441589" elapsed="0.000064"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:47.432132" elapsed="0.009612"/>
</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-07-28T01:57:46.759559" elapsed="0.682427"/>
</kw>
<msg time="2026-07-28T01:57:47.442047" 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-07-28T01:57:46.758616" elapsed="0.683486"/>
</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-07-28T01:57:46.758036" elapsed="0.684153"/>
</kw>
<msg time="2026-07-28T01:57:47.442243" 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-07-28T01:57:46.757491" elapsed="0.684802"/>
</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-07-28T01:57:47.445875" elapsed="0.000161"/>
</kw>
<msg time="2026-07-28T01:57:47.446084" 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-07-28T01:57:47.445217" elapsed="0.000950"/>
</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-07-28T01:57:47.446338" elapsed="0.000025"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:47.446637" elapsed="0.000024"/>
</kw>
<arg>${current_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:47.442640" elapsed="0.004089"/>
</kw>
<msg time="2026-07-28T01:57:47.446835" 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-07-28T01:57:46.756529" elapsed="0.690332"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.447354" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:47.447069" elapsed="0.000331"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:47.447449" elapsed="0.000162"/>
</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-07-28T01:57:46.755500" elapsed="0.692275"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:57:46.755254" elapsed="0.692560"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-07-28T01:57:46.755112" elapsed="0.692743"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-07-28T01:57:46.750869" elapsed="0.697052"/>
</kw>
<return>
<value>${updated_index_list}</value>
<status status="PASS" start="2026-07-28T01:57:47.447970" elapsed="0.000030"/>
</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-07-28T01:57:38.438815" elapsed="9.009300"/>
</kw>
<msg time="2026-07-28T01:57:47.448221" level="INFO">${status} = PASS</msg>
<msg time="2026-07-28T01:57:47.448268" 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-07-28T01:57:38.438172" elapsed="9.010120"/>
</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-07-28T01:57:47.448846" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:47.448376" elapsed="0.000530"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.448357" elapsed="0.000575"/>
</if>
<kw name="Start_Members_From_List_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.461989" 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-07-28T01:57:47.461579" elapsed="0.000441"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.462649" 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-07-28T01:57:47.462212" elapsed="0.000465"/>
</kw>
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-07-28T01:57:47.463185" level="INFO">${epoch} = 1785203867.463071</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-07-28T01:57:47.462848" elapsed="0.000366"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.463854" level="INFO">${gc_filepath} = /tmp/karaf-0.22.3/data/log/gc_1785203867.463071.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-07-28T01:57:47.463401" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.464472" level="INFO">${gc_options} = -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1785203867.463071.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-07-28T01:57:47.464055" elapsed="0.000450"/>
</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-07-28T01:57:47.466147" 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-07-28T01:57:47.465734" elapsed="0.000440"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.466693" 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-07-28T01:57:47.466354" elapsed="0.000367"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:47.466766" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:57:47.466940" 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-07-28T01:57:47.465320" 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-07-28T01:57:47.468138" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:57:47.467843" elapsed="0.000325"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.469252" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:47.469369" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:57:47.468864" elapsed="0.000533"/>
</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-07-28T01:57:47.472681" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:47.472346" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.472326" elapsed="0.000505"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.473120" level="INFO">index=5
host=10.30.171.224
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-07-28T01:57:47.473354" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:57:47.473002" elapsed="0.000385"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.474540" 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_1785203867.463071.log" on remote system "10.30.170.50" 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-07-28T01:57:47.473589" elapsed="0.001002"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.475480" 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-07-28T01:57:47.474776" elapsed="0.000734"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.476969" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:57:47.477132" 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-07-28T01:57:47.476348" elapsed="0.000892"/>
</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-07-28T01:57:47.477619" elapsed="0.000861"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.480795" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:57:47.806742" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:47 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:57:47.480344" elapsed="0.326714"/>
</kw>
<msg time="2026-07-28T01:57:47.807171" 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-07-28T01:57:47.478996" elapsed="0.328341"/>
</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-07-28T01:57:47.475749" elapsed="0.332080"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:57:47.808540" level="INFO">Executing command '/tmp/karaf-0.22.3/bin/start -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/tmp/karaf-0.22.3/data/log/gc_1785203867.463071.log'.</msg>
<msg time="2026-07-28T01:57:47.831562" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:57:47.831926" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:57:47.832048" 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-07-28T01:57:47.808129" elapsed="0.023971"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:57:47.832636" elapsed="0.000683"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.835284" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:47.834003" elapsed="0.001506"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:47.836158" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:47.835744" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.835689" elapsed="0.000647"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:57:47.836948" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-07-28T01:57:47.836587" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.836549" elapsed="0.000614"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:57:47.837314" elapsed="0.000100"/>
</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-07-28T01:57:47.849995" elapsed="0.000418"/>
</kw>
<msg time="2026-07-28T01:57:47.850588" 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-07-28T01:57:47.847843" elapsed="0.002865"/>
</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-07-28T01:57:47.851012" elapsed="0.000024"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:47.851297" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:57:47.838366" elapsed="0.013209"/>
</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-07-28T01:57:47.471788" elapsed="0.379899"/>
</kw>
<msg time="2026-07-28T01:57:47.851742" 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-07-28T01:57:47.471063" elapsed="0.380729"/>
</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-07-28T01:57:47.470138" elapsed="0.381748"/>
</kw>
<msg time="2026-07-28T01:57:47.851927" 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-07-28T01:57:47.469591" elapsed="0.382426"/>
</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-07-28T01:57:47.855877" elapsed="0.000212"/>
</kw>
<msg time="2026-07-28T01:57:47.856135" 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-07-28T01:57:47.855274" elapsed="0.000923"/>
</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-07-28T01:57:47.856408" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:47.856705" 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-07-28T01:57:47.852384" elapsed="0.004448"/>
</kw>
<msg time="2026-07-28T01:57:47.856939" 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-07-28T01:57:47.468402" elapsed="0.388563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.857592" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:47.857215" elapsed="0.000424"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:57:47.857684" elapsed="0.000030"/>
</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-07-28T01:57:47.467369" elapsed="0.390456"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:57:47.467180" elapsed="0.390695"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-07-28T01:57:47.467024" elapsed="0.390891"/>
</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-07-28T01:57:47.464740" elapsed="0.393233"/>
</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-07-28T01:57:47.868483" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:47.868114" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.868095" elapsed="0.000475"/>
</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-07-28T01:57:47.870167" 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-07-28T01:57:47.869777" elapsed="0.000416"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.870764" 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-07-28T01:57:47.870391" elapsed="0.000399"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:47.870835" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:57:47.871025" 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-07-28T01:57:47.869291" elapsed="0.001759"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.872199" 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-07-28T01:57:47.871859" elapsed="0.000367"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-07-28T01:57:47.872271" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:57:47.872469" 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-07-28T01:57:47.871476" elapsed="0.001020"/>
</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-07-28T01:57:47.970992" 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-07-28T01:57:47.970276" elapsed="0.000819"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:47.973304" 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-07-28T01:57:47.972965" elapsed="0.000419">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-07-28T01:57:47.973630" 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-07-28T01:57:47.972419" elapsed="0.001305"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.975673" 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-07-28T01:57:47.974784" elapsed="0.000987"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:47.977107" 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-07-28T01:57:47.977380" 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-07-28T01:57:47.976755" elapsed="0.000764"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.978964" 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-07-28T01:57:47.978528" elapsed="0.000542"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.980744" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:47.980476" elapsed="0.000314"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.981270" 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-07-28T01:57:47.980953" elapsed="0.000343"/>
</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-07-28T01:57:47.981674" 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-07-28T01:57:47.981921" 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-07-28T01:57:47.982096" elapsed="0.000021"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-07-28T01:57:47.981535" elapsed="0.000618"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-07-28T01:57:47.981350" elapsed="0.000836"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:47.982233" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:47.982489" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:47.980048" elapsed="0.002492"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:47.979268" elapsed="0.003313"/>
</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-07-28T01:57:47.982952" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:47.982639" elapsed="0.000391"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:47.979210" elapsed="0.003952"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:47.985178" 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-07-28T01:57:47.984352" elapsed="0.000924"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:47.985428" elapsed="0.000074"/>
</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-07-28T01:57:47.967971" elapsed="0.017777"/>
</kw>
<msg time="2026-07-28T01:57:47.986041" 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-07-28T01:57:47.913759" elapsed="0.072340"/>
</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-07-28T01:57:47.999362" 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-07-28T01:57:48.012335" elapsed="0.000029"/>
</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-07-28T01:57:48.025168" 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-07-28T01:57:48.025369" 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-07-28T01:57:48.025648" elapsed="0.000026"/>
</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-07-28T01:57:48.026100" elapsed="0.000052"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:48.025935" elapsed="0.000323"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:48.025919" elapsed="0.000367"/>
</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-07-28T01:57:48.026446" elapsed="0.000051"/>
</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-07-28T01:57:48.026652" 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-07-28T01:57:48.026821" elapsed="0.000024"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:48.025887" elapsed="0.000998"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.025737" elapsed="0.001175"/>
</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-07-28T01:57:48.027062" elapsed="0.000022"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.027139" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:57:48.027261" 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-07-28T01:57:47.909052" elapsed="0.118235"/>
</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-07-28T01:57:48.028799" 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-07-28T01:57:48.028373" elapsed="0.000580">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-07-28T01:57:48.029167" 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-07-28T01:57:48.028017" elapsed="0.001176"/>
</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-07-28T01:57:48.029584" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:48.029267" elapsed="0.000382"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:48.030401" 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-07-28T01:57:48.029886" elapsed="0.000541"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:48.029676" elapsed="0.000816"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:48.029247" elapsed="0.001269"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:48.032997" 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-07-28T01:57:48.030672" elapsed="0.002352"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:48.033076" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:48.033234" 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-07-28T01:57:48.027683" elapsed="0.005575"/>
</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-07-28T01:57:48.035230" 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-07-28T01:57:48.034344" elapsed="0.001368">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-07-28T01:57:48.036216" 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-07-28T01:57:48.033987" elapsed="0.002290"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:57:48.036818" elapsed="0.000063"/>
</return>
<status status="PASS" start="2026-07-28T01:57:48.036443" elapsed="0.000514"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:48.036399" elapsed="0.000626"/>
</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-07-28T01:57:48.037371" elapsed="0.000150"/>
</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-07-28T01:57:48.037891" elapsed="0.000049"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.038044" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:57:48.040364" 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-07-28T01:57:48.033658" elapsed="0.006742"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:48.041971" 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-07-28T01:57:48.041679" elapsed="0.000339"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:48.042488" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:48.042174" elapsed="0.000363"/>
</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-07-28T01:57:48.048280" level="FAIL">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.044717" elapsed="0.010487">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-07-28T01:57:48.042606" elapsed="0.012983">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.056107" elapsed="0.000109"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:48.055672" elapsed="0.000643"/>
</branch>
<status status="FAIL" start="2026-07-28T01:57:48.042587" elapsed="0.013781">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.057905" elapsed="0.000137"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.058297" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:48.058211" elapsed="0.000303"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:48.058171" elapsed="0.000415"/>
</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-07-28T01:57:48.058992" elapsed="0.000053"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.059157" elapsed="0.000090"/>
</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-07-28T01:57:48.040778" elapsed="0.018753">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.059786" elapsed="0.000039"/>
</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-07-28T01:57:47.885545" elapsed="0.174477">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.060896" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:48.060394" elapsed="0.000671"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:48.060351" elapsed="0.000832"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:48.061262" elapsed="0.000034"/>
</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-07-28T01:57:47.879005" elapsed="0.182616">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-07-28T01:57:47.871283" elapsed="0.190508">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:47.871107" elapsed="0.190818">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-07-28T01:57:47.868911" elapsed="0.193301">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</kw>
<status status="FAIL" start="2026-07-28T01:57:47.868624" elapsed="0.193717">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', port=8181): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
</branch>
<status status="FAIL" start="2026-07-28T01:57:47.868609" elapsed="0.193917">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:48.063322" elapsed="0.000057"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:48.062694" elapsed="0.000871"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:48.062655" elapsed="0.000965"/>
</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-07-28T01:57:47.867666" elapsed="0.196143">ConnectionError: HTTPConnectionPool(host='10.30.170.50', port=8181): Max retries exceeded with url: /rests/data/ietf-yang-library:modules-state?content=nonconfig (Caused by NewConnectionError("HTTPConnection(host='10.30.170.50', 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-07-28T01:57:58.080115" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.079744" elapsed="0.000447"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:58.079716" elapsed="0.000501"/>
</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-07-28T01:57:58.081929" 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-07-28T01:57:58.081425" elapsed="0.000534"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.082828" 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-07-28T01:57:58.082131" elapsed="0.000725"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:57:58.082908" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:57:58.083084" 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-07-28T01:57:58.080986" elapsed="0.002124"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.084184" 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-07-28T01:57:58.083879" elapsed="0.000396"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-07-28T01:57:58.084325" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:58.084501" 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-07-28T01:57:58.083515" elapsed="0.001013"/>
</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-07-28T01:57:58.179707" 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-07-28T01:57:58.179050" elapsed="0.000772"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:57:58.181870" 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-07-28T01:57:58.181424" elapsed="0.000525">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-07-28T01:57:58.182161" 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-07-28T01:57:58.180866" elapsed="0.001390"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.184193" 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-07-28T01:57:58.183290" elapsed="0.001001"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:57:58.185665" 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-07-28T01:57:58.185947" 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-07-28T01:57:58.185294" elapsed="0.000751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.187615" 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-07-28T01:57:58.187191" elapsed="0.000542"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.189171" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:58.188897" elapsed="0.000321"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.189918" 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-07-28T01:57:58.189381" elapsed="0.000564"/>
</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-07-28T01:57:58.190297" 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-07-28T01:57:58.190685" 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-07-28T01:57:58.190878" elapsed="0.000021"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-07-28T01:57:58.190154" elapsed="0.000782"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.190000" elapsed="0.000968"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:57:58.191013" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:57:58.191216" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:57:58.188515" elapsed="0.002754"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:58.187891" elapsed="0.003421"/>
</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-07-28T01:57:58.191672" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.191371" elapsed="0.000380"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:58.187834" elapsed="0.003972"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.193571" 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-07-28T01:57:58.192799" elapsed="0.000883"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:57:58.193768" elapsed="0.000054"/>
</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-07-28T01:57:58.176557" elapsed="0.017521"/>
</kw>
<msg time="2026-07-28T01:57:58.194424" 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-07-28T01:57:58.125192" elapsed="0.069430"/>
</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-07-28T01:57:58.207162" 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-07-28T01:57:58.219495" elapsed="0.000029"/>
</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-07-28T01:57:58.232345" elapsed="0.000030"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<var>${items}</var>
<doc>Returns a list containing given items.</doc>
<status status="NOT RUN" start="2026-07-28T01:57:58.232571" 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-07-28T01:57:58.232764" elapsed="0.000023"/>
</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-07-28T01:57:58.233209" elapsed="0.000049"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.233055" elapsed="0.000324"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:58.233040" elapsed="0.000367"/>
</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-07-28T01:57:58.233613" elapsed="0.000024"/>
</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-07-28T01:57:58.233805" elapsed="0.000022"/>
</kw>
<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-07-28T01:57:58.233978" elapsed="0.000020"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:57:58.233007" elapsed="0.001024"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.232846" elapsed="0.001212"/>
</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-07-28T01:57:58.234230" elapsed="0.000021"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.234307" elapsed="0.000016"/>
</return>
<msg time="2026-07-28T01:57:58.234431" 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-07-28T01:57:58.120890" elapsed="0.113582"/>
</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-07-28T01:57:58.236013" 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-07-28T01:57:58.235590" elapsed="0.000585">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-07-28T01:57:58.236425" 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-07-28T01:57:58.235208" elapsed="0.001259"/>
</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-07-28T01:57:58.236838" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.236558" elapsed="0.000379"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.237757" 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-07-28T01:57:58.237171" elapsed="0.000620"/>
</kw>
<status status="PASS" start="2026-07-28T01:57:58.236965" elapsed="0.000864"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:58.236538" elapsed="0.001314"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.240309" 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-07-28T01:57:58.238010" elapsed="0.002327"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:57:58.240390" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:57:58.240574" 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-07-28T01:57:58.234855" elapsed="0.005746"/>
</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-07-28T01:57:58.242069" 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-07-28T01:57:58.241669" elapsed="0.000556">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-07-28T01:57:58.242437" 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-07-28T01:57:58.241269" elapsed="0.001246"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:57:58.242746" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-07-28T01:57:58.242605" elapsed="0.000201"/>
</branch>
<status status="PASS" start="2026-07-28T01:57:58.242585" elapsed="0.000245"/>
</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-07-28T01:57:58.242982" 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-07-28T01:57:58.243171" elapsed="0.000022"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.243237" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:57:58.245369" 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-07-28T01:57:58.240930" elapsed="0.004467"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.247275" 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-07-28T01:57:58.246973" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:57:58.247782" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:57:58.247497" elapsed="0.000331"/>
</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-07-28T01:57:58.392161" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:57:58.392565" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:57:58.393623" level="FAIL">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:57:58.250059" elapsed="0.144896">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-07-28T01:57:58.247899" elapsed="0.147269">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:57:58.395692" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.395247" elapsed="0.000597"/>
</branch>
<status status="FAIL" start="2026-07-28T01:57:58.247880" elapsed="0.148018">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:57:58.397217" elapsed="0.000078"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.397747" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:57:58.397656" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:58.397610" elapsed="0.000282"/>
</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-07-28T01:57:58.398241" elapsed="0.000049"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.398416" elapsed="0.000034"/>
</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-07-28T01:57:58.245849" elapsed="0.152848">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.398891" elapsed="0.000037"/>
</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-07-28T01:57:58.094559" elapsed="0.304558">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:57:58.399795" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.399347" elapsed="0.000629"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:58.399309" elapsed="0.000720"/>
</if>
<return>
<value>${response_text}</value>
<status status="NOT RUN" start="2026-07-28T01:57:58.400102" elapsed="0.000031"/>
</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-07-28T01:57:58.088437" elapsed="0.311886">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<var name="${index}">1</var>
<status status="FAIL" start="2026-07-28T01:57:58.083324" elapsed="0.317222">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="FAIL" start="2026-07-28T01:57:58.083171" elapsed="0.317517">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</for>
<arg>${member_index_list}</arg>
<status status="FAIL" start="2026-07-28T01:57:58.080569" elapsed="0.320331">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</kw>
<status status="FAIL" start="2026-07-28T01:57:58.080275" elapsed="0.320748">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig</status>
</branch>
<status status="FAIL" start="2026-07-28T01:57:58.080258" elapsed="0.320850">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:57:58.401846" elapsed="0.000055"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:57:58.401258" elapsed="0.000718"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:57:58.401222" elapsed="0.000805"/>
</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-07-28T01:57:58.079080" elapsed="0.323141">HTTPError: 401 Client Error: Unauthorized for url: http://10.30.170.50: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-07-28T01:58:08.418831" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:08.418332" elapsed="0.000602"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.418297" elapsed="0.000674"/>
</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-07-28T01:58:08.421258" 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-07-28T01:58:08.420615" elapsed="0.000673"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.421786" 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-07-28T01:58:08.421470" elapsed="0.000343"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:58:08.421873" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:58:08.422044" 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-07-28T01:58:08.419975" elapsed="0.002094"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Resolve_Http_Session_For_Member" owner="ClusterManagement">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.423565" 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-07-28T01:58:08.422920" elapsed="0.000674"/>
</kw>
<return>
<value>${session}</value>
<status status="PASS" start="2026-07-28T01:58:08.423643" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:08.423796" 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-07-28T01:58:08.422563" elapsed="0.001258"/>
</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-07-28T01:58:08.512684" 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-07-28T01:58:08.512040" elapsed="0.000741"/>
</kw>
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="File Should Exist" owner="OperatingSystem">
<msg time="2026-07-28T01:58:08.514635" 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-07-28T01:58:08.514346" elapsed="0.000368">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-07-28T01:58:08.514911" 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-07-28T01:58:08.513748" elapsed="0.001259"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.516938" 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-07-28T01:58:08.516030" elapsed="0.001007"/>
</kw>
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:58:08.518344" 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-07-28T01:58:08.518636" 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-07-28T01:58:08.518024" elapsed="0.000710"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.520270" 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-07-28T01:58:08.519869" elapsed="0.000511"/>
</kw>
<if>
<branch type="IF" condition="${percent_encode} == True">
<kw name="Encode_Mapping" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.521794" level="INFO">mapping: {}</msg>
<arg>mapping: ${mapping}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:08.521527" elapsed="0.000313"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.522273" 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-07-28T01:58:08.522003" elapsed="0.000296"/>
</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-07-28T01:58:08.522652" 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-07-28T01:58:08.522861" elapsed="0.000024"/>
</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-07-28T01:58:08.523039" elapsed="0.000022"/>
</kw>
<var name="${key}"/>
<var name="${value}"/>
<status status="NOT RUN" start="2026-07-28T01:58:08.522511" elapsed="0.000587"/>
</iter>
<var>${key}</var>
<var>${value}</var>
<value>&amp;{mapping}</value>
<status status="NOT RUN" start="2026-07-28T01:58:08.522347" elapsed="0.000781"/>
</for>
<return>
<value>${encoded_mapping}</value>
<status status="PASS" start="2026-07-28T01:58:08.523171" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:08.523356" level="INFO">${mapping_to_use} = {}</msg>
<var>${mapping_to_use}</var>
<arg>${mapping}</arg>
<status status="PASS" start="2026-07-28T01:58:08.521136" elapsed="0.002268"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:08.520564" elapsed="0.002882"/>
</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-07-28T01:58:08.523969" elapsed="0.000036"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:08.523689" elapsed="0.000360"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.520492" elapsed="0.003614"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.525901" 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-07-28T01:58:08.525094" elapsed="0.000906"/>
</kw>
<return>
<value>${final_text}</value>
<status status="PASS" start="2026-07-28T01:58:08.526083" elapsed="0.000054"/>
</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-07-28T01:58:08.509621" elapsed="0.016764"/>
</kw>
<msg time="2026-07-28T01:58:08.526714" 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-07-28T01:58:08.459536" elapsed="0.067235"/>
</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-07-28T01:58:08.539245" 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-07-28T01:58:08.551209" 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-07-28T01:58:08.563120" 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-07-28T01:58:08.563318" 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-07-28T01:58:08.563506" 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-07-28T01:58:08.563966" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:08.563815" elapsed="0.000321"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:08.563799" elapsed="0.000365"/>
</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-07-28T01:58:08.564312" elapsed="0.000022"/>
</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-07-28T01:58:08.564524" elapsed="0.000022"/>
</kw>
<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-07-28T01:58:08.564696" elapsed="0.000021"/>
</kw>
<var name="${iteration}"/>
<status status="NOT RUN" start="2026-07-28T01:58:08.563769" elapsed="0.000980"/>
</iter>
<var>${iteration}</var>
<value>${iter_start}</value>
<value>${iterations}+${iter_start}</value>
<status status="NOT RUN" start="2026-07-28T01:58:08.563622" elapsed="0.001153"/>
</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-07-28T01:58:08.564921" elapsed="0.000020"/>
</kw>
<return>
<value>${final_text}</value>
<status status="NOT RUN" start="2026-07-28T01:58:08.564995" elapsed="0.000015"/>
</return>
<msg time="2026-07-28T01:58:08.565125" 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-07-28T01:58:08.455358" elapsed="0.109793"/>
</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-07-28T01:58:08.566607" 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-07-28T01:58:08.566208" elapsed="0.000542">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-07-28T01:58:08.566955" 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-07-28T01:58:08.565866" elapsed="0.001114"/>
</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-07-28T01:58:08.567304" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:08.567052" elapsed="0.000346"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.568134" 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-07-28T01:58:08.567638" elapsed="0.000523"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:08.567424" elapsed="0.000778"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.567034" elapsed="0.001190"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.570685" 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-07-28T01:58:08.568378" elapsed="0.002334"/>
</kw>
<return>
<value>${expression}</value>
<status status="PASS" start="2026-07-28T01:58:08.570763" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:58:08.570918" 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-07-28T01:58:08.565526" elapsed="0.005417"/>
</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-07-28T01:58:08.572303" 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-07-28T01:58:08.571924" 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-07-28T01:58:08.572705" 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-07-28T01:58:08.571588" elapsed="0.001142"/>
</kw>
<if>
<branch type="IF" condition="${read_volatiles_file} == ${false}">
<return>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:58:08.572941" elapsed="0.000026"/>
</return>
<status status="PASS" start="2026-07-28T01:58:08.572803" elapsed="0.000197"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.572784" 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-07-28T01:58:08.573173" 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-07-28T01:58:08.573347" elapsed="0.000021"/>
</kw>
<return>
<value>${volatiles_list}</value>
<status status="NOT RUN" start="2026-07-28T01:58:08.573413" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:58:08.575486" 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-07-28T01:58:08.571248" elapsed="0.004265"/>
</kw>
<kw name="Get_From_Uri" owner="TemplatedRequests">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.576973" 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-07-28T01:58:08.576701" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:08.577444" level="INFO">{}</msg>
<arg>${accept}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:08.577179" elapsed="0.000346"/>
</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-07-28T01:58:09.432315" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:58:09.433238" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/ietf-yang-library:modules-state?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node04dqfyhz6xoug1tl00ejyt1suf0.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:58:09 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","encrypted-passwords","hidden-symmetric-keys","csr-generation","cms-enveloped-data-format","encrypted-private-keys","asymmetrically-encrypted-value-format","cleartext-private-keys","cms-encrypted-data-format","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","local-user-auth-hostbased","ssh-server-keepalives"]},{"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-07-28T01:58:09.433976" 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-07-28T01:58:08.579630" elapsed="0.854391"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:08.577593" elapsed="0.856511"/>
</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-07-28T01:58:09.434524" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.434155" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.577575" elapsed="0.857089"/>
</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-07-28T01:58:09.442280" 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","encrypted-passwords","hidden-symmetric-keys","csr-generation","cms-enveloped-data-format","encrypted-private-keys","asymmetrically-encrypted-value-format","cleartext-private-keys","cms-encrypted-data-format","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","local-user-auth-hostbased","ssh-server-keepalives"]},{"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":["ssh-client-keepalives","client-ident-hostbased","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-x509-cert","client-auth-supported"]},{"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":["local-binding-supported","tcp-client-keepalives"]},{"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","if-mib","arbitrary-names"]},{"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":["xpath","url","rollback-on-error","validate","candidate","confirmed-commit","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":["tls12","hello-params","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":["http-listen","https-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-07-28T01:58:09.436716" elapsed="0.006157"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.436241" elapsed="0.006710"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.436212" elapsed="0.006769"/>
</if>
<if>
<branch type="IF" condition="&quot;${log_response}&quot; == &quot;True&quot;">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.445965" level="INFO">200</msg>
<arg>${response.status_code}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:09.443351" elapsed="0.002729"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.443041" elapsed="0.003113"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.443023" elapsed="0.003159"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.447036" 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-07-28T01:58:09.446392" elapsed="0.000674"/>
</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-07-28T01:58:09.447836" elapsed="0.000079"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.447173" elapsed="0.000825"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.449252" 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-07-28T01:58:09.448589" elapsed="0.000704"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.448026" elapsed="0.001349"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.447153" elapsed="0.002246"/>
</if>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.450208" 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-07-28T01:58:09.449640" elapsed="0.000595"/>
</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-07-28T01:58:09.450995" elapsed="0.000077"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.450339" elapsed="0.000833"/>
</branch>
<branch type="ELSE">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.452430" 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-07-28T01:58:09.451739" elapsed="0.000748"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.451200" elapsed="0.001374"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.450320" elapsed="0.002280"/>
</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-07-28T01:58:09.452766" elapsed="0.000788"/>
</kw>
<kw name="Combine Lists" owner="Collections">
<msg time="2026-07-28T01:58:09.454336" 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-07-28T01:58:09.453777" elapsed="0.000586"/>
</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-07-28T01:58:09.454696" elapsed="0.002711"/>
</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-07-28T01:58:09.435485" elapsed="0.022036"/>
</kw>
<if>
<branch type="IF" condition="not ${normalize_json}">
<return>
<value>${response.text}</value>
<status status="NOT RUN" start="2026-07-28T01:58:09.457713" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:09.457595" elapsed="0.000166"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.457576" elapsed="0.000207"/>
</if>
<kw name="Normalize Json Text" owner="norm_json">
<msg time="2026-07-28T01:58:09.486136" 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-07-28T01:58:09.457938" elapsed="0.028231"/>
</kw>
<return>
<value>${text_normalized}</value>
<status status="PASS" start="2026-07-28T01:58:09.486231" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:58:09.486423" 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-07-28T01:58:08.575855" elapsed="0.910686"/>
</kw>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:58:09.486612" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:58:09.486768" 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-07-28T01:58:08.433587" elapsed="1.053207"/>
</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-07-28T01:58:09.487157" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.486891" elapsed="0.000382"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.486873" elapsed="0.000425"/>
</if>
<return>
<value>${response_text}</value>
<status status="PASS" start="2026-07-28T01:58:09.487332" elapsed="0.000027"/>
</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-07-28T01:58:08.427618" elapsed="1.059869"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:58:08.422373" elapsed="1.065167"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-07-28T01:58:08.422223" elapsed="1.065355"/>
</for>
<arg>${member_index_list}</arg>
<status status="PASS" start="2026-07-28T01:58:08.419408" elapsed="1.068228"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:08.419048" elapsed="1.068617"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:08.419027" elapsed="1.068661"/>
</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-07-28T01:58:09.488130" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.487745" elapsed="0.000445"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.487729" elapsed="0.000495"/>
</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-07-28T01:58:08.417626" elapsed="1.070646"/>
</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-07-28T01:57:47.858200" elapsed="21.630134"/>
</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-07-28T01:58:09.491919" 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-07-28T01:58:09.491487" elapsed="0.000460"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.492498" 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-07-28T01:58:09.492160" elapsed="0.000366"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-07-28T01:58:09.492572" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:09.492740" 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-07-28T01:58:09.491038" elapsed="0.001727"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Run_Bash_Command_On_Member" owner="ClusterManagement">
<kw name="Get From Dictionary" owner="Collections">
<msg time="2026-07-28T01:58:09.493901" level="INFO">${member_ip} = 10.30.170.50</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-07-28T01:58:09.493614" elapsed="0.000313"/>
</kw>
<kw name="Run_Keyword_Preserve_Connection" owner="SSHKeywords">
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:09.494776" level="INFO">index=5
host=10.30.171.224
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-07-28T01:58:09.494889" level="INFO">${current_connection} = index=5
host=10.30.171.224
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-07-28T01:58:09.494642" elapsed="0.000274"/>
</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-07-28T01:58:09.497743" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.497430" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.497411" elapsed="0.000414"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:09.498078" level="INFO">index=5
host=10.30.171.224
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-07-28T01:58:09.498182" level="INFO">${current_ssh_connection} = index=5
host=10.30.171.224
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-07-28T01:58:09.497972" elapsed="0.000237"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.499120" level="INFO">Attempting to execute command "netstat -pnatu | grep 2550" on remote system "10.30.170.50" 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-07-28T01:58:09.498360" elapsed="0.000809"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:09.499896" 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-07-28T01:58:09.499333" elapsed="0.000590"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.501341" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:09.501498" 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-07-28T01:58:09.500684" elapsed="0.000854"/>
</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-07-28T01:58:09.501766" elapsed="0.000608"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:09.504656" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:09.817591" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:57:47 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:09.504096" elapsed="0.313867"/>
</kw>
<msg time="2026-07-28T01:58:09.818070" 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-07-28T01:58:09.502675" elapsed="0.315527"/>
</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-07-28T01:58:09.500159" elapsed="0.318261"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:09.818999" level="INFO">Executing command 'netstat -pnatu | grep 2550'.</msg>
<msg time="2026-07-28T01:58:09.831300" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:58:09.831497" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:09.831612" 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-07-28T01:58:09.818696" elapsed="0.012954"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:09.831963" elapsed="0.000356"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.833354" 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-07-28T01:58:09.832754" elapsed="0.000670"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:09.833887" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:09.833621" elapsed="0.000338"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.833583" elapsed="0.000410"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:09.834284" elapsed="0.000042"/>
</return>
<status status="PASS" start="2026-07-28T01:58:09.834116" elapsed="0.000305"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.834050" elapsed="0.000428"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:09.834532" 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-07-28T01:58:09.857067" elapsed="0.000376"/>
</kw>
<msg time="2026-07-28T01:58:09.857544" 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-07-28T01:58:09.855077" elapsed="0.002587"/>
</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-07-28T01:58:09.857865" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:09.858050" 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-07-28T01:58:09.835096" elapsed="0.023039"/>
</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-07-28T01:58:09.496874" elapsed="0.361352"/>
</kw>
<msg time="2026-07-28T01:58:09.858280" 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-07-28T01:58:09.496228" elapsed="0.362114"/>
</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-07-28T01:58:09.495629" elapsed="0.362790"/>
</kw>
<msg time="2026-07-28T01:58:09.858593" 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-07-28T01:58:09.495083" elapsed="0.363627"/>
</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-07-28T01:58:09.862262" elapsed="0.000146"/>
</kw>
<msg time="2026-07-28T01:58:09.862468" 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-07-28T01:58:09.861754" elapsed="0.000817"/>
</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-07-28T01:58:09.862740" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:09.862908" 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-07-28T01:58:09.859066" elapsed="0.003964"/>
</kw>
<msg time="2026-07-28T01:58:09.863125" 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-07-28T01:58:09.494156" elapsed="0.368994"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.863899" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:09.863369" elapsed="0.000574"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:58:09.863989" elapsed="0.000032"/>
</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-07-28T01:58:09.493146" elapsed="0.370974"/>
</kw>
<var name="${index}">1</var>
<status status="PASS" start="2026-07-28T01:58:09.492967" elapsed="0.371189"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="PASS" start="2026-07-28T01:58:09.492821" elapsed="0.371373"/>
</for>
<arg>command=netstat -pnatu | grep 2550</arg>
<doc>Cycle through indices (or all), run command on each.</doc>
<status status="PASS" start="2026-07-28T01:58:09.488642" elapsed="0.375647"/>
</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-07-28T01:57:47.453473" elapsed="22.410871"/>
</kw>
<doc>Stop and Start controller.</doc>
<status status="PASS" start="2026-07-28T01:57:38.437695" elapsed="31.426793"/>
</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-07-28T01:58:09.886557" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:09.887589" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01tg73y1m9jk1c1nlr16dd0pwb812.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:58:09 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","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-07-28T01:58:09.888034" 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-07-28T01:58:09.866595" elapsed="0.021583"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.892617" 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-07-28T01:58:09.888528" elapsed="0.004195"/>
</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-07-28T01:58:09.896644" elapsed="0.005737"/>
</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-07-28T01:58:09.902605" elapsed="0.002791"/>
</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-07-28T01:58:09.905615" elapsed="0.002755"/>
</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-07-28T01:58:09.908594" elapsed="0.002713"/>
</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-07-28T01:58:09.911530" elapsed="0.002784"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.915012" 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-07-28T01:58:09.914531" elapsed="0.000509"/>
</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-07-28T01:58:09.915391" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.915122" elapsed="0.000342"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.915100" elapsed="0.000393"/>
</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-07-28T01:58:09.915805" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.915553" elapsed="0.000356"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.915534" elapsed="0.000400"/>
</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-07-28T01:58:09.916236" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.915990" elapsed="0.000303"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.915975" elapsed="0.000349"/>
</if>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:58:09.896361" elapsed="0.019990"/>
</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-07-28T01:58:09.916755" elapsed="0.002753"/>
</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-07-28T01:58:09.919706" elapsed="0.002776"/>
</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-07-28T01:58:09.922682" elapsed="0.006346"/>
</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-07-28T01:58:09.929800" elapsed="0.004552"/>
</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-07-28T01:58:09.934610" elapsed="0.003085"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.938653" 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-07-28T01:58:09.938028" elapsed="0.000657"/>
</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-07-28T01:58:09.939101" elapsed="0.003075"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.938827" elapsed="0.003392"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.938757" elapsed="0.003492"/>
</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-07-28T01:58:09.942638" elapsed="0.003087"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.942351" elapsed="0.003416"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.942332" elapsed="0.003462"/>
</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-07-28T01:58:09.946214" elapsed="0.003085"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:09.945898" elapsed="0.003444"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.945880" elapsed="0.003489"/>
</if>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:58:09.916585" elapsed="0.032808"/>
</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-07-28T01:58:09.949938" elapsed="0.003085"/>
</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-07-28T01:58:09.953265" elapsed="0.003037"/>
</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-07-28T01:58:09.956526" elapsed="0.003004"/>
</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-07-28T01:58:09.959732" elapsed="0.002911"/>
</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-07-28T01:58:09.962844" elapsed="0.003005"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:09.966657" 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-07-28T01:58:09.966134" elapsed="0.000551"/>
</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-07-28T01:58:09.967074" elapsed="0.000063"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.966799" elapsed="0.000377"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.966778" elapsed="0.000424"/>
</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-07-28T01:58:09.967570" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.967258" elapsed="0.000373"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.967242" elapsed="0.000413"/>
</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-07-28T01:58:09.968067" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:09.967713" elapsed="0.000415"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:09.967693" elapsed="0.000462"/>
</if>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:58:09.949709" elapsed="0.018470"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:58:09.892806" elapsed="0.075403"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check Linear topology.</doc>
<status status="PASS" start="2026-07-28T01:58:09.866167" elapsed="0.102158"/>
</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-07-28T01:58:09.865226" elapsed="0.103157"/>
</kw>
<doc>Check Linear Topology.</doc>
<status status="PASS" start="2026-07-28T01:58:09.864731" elapsed="0.103818"/>
</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-07-28T01:58:10.085867" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:10.087917" level="INFO">GET Response : url=http://10.30.170.50: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":35178,"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":422000000}},"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":336000000}},"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":336000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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-07-28T01:58:10.088628" 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-07-28T01:58:09.970947" elapsed="0.117757"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.153568" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":35178,"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":422000000}},"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":336000000}},"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":336000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":"12","byte-count":"930","duration":{"second":3,"nanosecond":133000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":212000000}},"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":212000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"23","active-flows":100,"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":"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-07-28T01:58:08.805Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":54,"nanosecond":464000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":466000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":"16","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":466000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":272000000},"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":51,"nanosecond":272000000},"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":51,"nanosecond":272000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":51,"nanosecond":272000000},"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":772000000},"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":54,"nanosecond":116000000},"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":772000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":771000000},"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":771000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":771000000},"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":779000000},"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":771000000},"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":779000000},"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":779000000},"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":779000000},"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":771000000},"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":779000000},"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":766000000},"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":779000000},"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":766000000},"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":766000000},"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":766000000},"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":779000000},"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":779000000},"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":779000000},"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":779000000},"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":779000000},"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":53,"nanosecond":280000000},"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":766000000},"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":765000000},"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":53,"nanosecond":280000000},"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":53,"nanosecond":280000000},"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":53,"nanosecond":280000000},"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":765000000},"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":765000000},"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":53,"nanosecond":279000000},"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":765000000},"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":762000000},"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":762000000},"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":53,"nanosecond":279000000},"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":53,"nanosecond":278000000},"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":53,"nanosecond":278000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":53,"nanosecond":277000000},"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":762000000},"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":53,"nanosecond":277000000},"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":762000000},"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":762000000},"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":762000000},"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":53,"nanosecond":277000000},"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":761000000},"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":761000000},"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":761000000},"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":53,"nanosecond":277000000},"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":53,"nanosecond":276000000},"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":761000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":761000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":761000000},"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":761000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":271000000},"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":761000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":761000000},"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":761000000},"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":761000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":760000000},"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":760000000},"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":760000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":757000000},"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":779000000},"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":777000000},"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":757000000},"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":775000000},"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":775000000},"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":774000000},"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":757000000},"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":774000000},"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":774000000},"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":773000000},"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":773000000},"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":772000000},"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":772000000},"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":757000000},"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":772000000},"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":757000000},"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":772000000},"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":757000000},"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":772000000},"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":772000000},"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":772000000},"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":771000000},"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":771000000},"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":771000000},"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":771000000},"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":770000000},"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":770000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":277000000},"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":757000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":274000000},"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":52,"nanosecond":273000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":757000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":757000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":778000000},"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":775000000},"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":773000000},"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":772000000},"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":772000000},"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":772000000},"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":771000000},"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":771000000},"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":770000000},"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":770000000},"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":770000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":274000000},"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":51,"nanosecond":274000000},"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":51,"nanosecond":273000000},"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":757000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":272000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.038Z"}},{"id":"openflow:1","flow-node-inventory:port-number":35176,"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":371000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":"12","byte-count":"930","duration":{"second":3,"nanosecond":94000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"20","active-flows":100,"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":"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-07-28T01:58:08.798Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":54,"nanosecond":447000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":54,"nanosecond":440000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":447000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"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":54,"nanosecond":89000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":51,"nanosecond":245000000},"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":742000000},"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":54,"nanosecond":89000000},"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":742000000},"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":54,"nanosecond":87000000},"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":54,"nanosecond":87000000},"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":742000000},"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":742000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":87000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":741000000},"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":753000000},"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":741000000},"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":753000000},"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":753000000},"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":753000000},"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":741000000},"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":752000000},"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":742000000},"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":752000000},"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":738000000},"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":738000000},"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":739000000},"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":753000000},"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":752000000},"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":752000000},"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":751000000},"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":752000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":738000000},"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":738000000},"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":53,"nanosecond":249000000},"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":738000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":249000000},"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":739000000},"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":738000000},"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":738000000},"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":738000000},"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":53,"nanosecond":250000000},"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":738000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":738000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":738000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":739000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":739000000},"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":739000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":738000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":739000000},"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":739000000},"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":739000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":246000000},"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":738000000},"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":739000000},"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":739000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":738000000},"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":750000000},"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":750000000},"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":738000000},"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":750000000},"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":750000000},"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":750000000},"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":739000000},"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":750000000},"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":750000000},"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":749000000},"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":750000000},"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":749000000},"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":750000000},"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":739000000},"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":749000000},"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":739000000},"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":749000000},"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":739000000},"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":749000000},"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":749000000},"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":750000000},"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":750000000},"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":749000000},"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":750000000},"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":750000000},"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":750000000},"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":750000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":739000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":250000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":250000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":738000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":738000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":749000000},"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":749000000},"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":749000000},"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":748000000},"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":748000000},"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":749000000},"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":748000000},"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":749000000},"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":749000000},"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":749000000},"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":749000000},"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":51,"nanosecond":249000000},"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":51,"nanosecond":249000000},"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":51,"nanosecond":248000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":248000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":738000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.018Z"}},{"id":"openflow:2","flow-node-inventory:port-number":35180,"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":"23","byte-count":"1820","duration":{"second":3,"nanosecond":89000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"38","active-flows":100,"packets-matched":"23"}},{"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-07-28T01:58:08.812Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":54,"nanosecond":453000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":"16","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":51,"nanosecond":257000000},"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":758000000},"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":54,"nanosecond":99000000},"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":758000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":758000000},"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":758000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":758000000},"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":766000000},"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":758000000},"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":766000000},"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":766000000},"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":766000000},"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":758000000},"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":766000000},"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":758000000},"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":765000000},"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":758000000},"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":758000000},"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":758000000},"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":765000000},"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":765000000},"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":765000000},"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":765000000},"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":765000000},"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":53,"nanosecond":266000000},"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":758000000},"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":758000000},"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":53,"nanosecond":266000000},"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":53,"nanosecond":266000000},"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":53,"nanosecond":266000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":53,"nanosecond":265000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":264000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":264000000},"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":53,"nanosecond":264000000},"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":758000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":758000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":766000000},"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":765000000},"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":758000000},"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":765000000},"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":765000000},"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":765000000},"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":758000000},"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":765000000},"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":764000000},"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":764000000},"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":764000000},"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":764000000},"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":764000000},"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":758000000},"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":763000000},"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":758000000},"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":763000000},"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":758000000},"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":763000000},"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":763000000},"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":763000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":761000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":758000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":758000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":758000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":260000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":51,"nanosecond":263000000},"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":51,"nanosecond":263000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":757000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":258000000},"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":51,"nanosecond":258000000},"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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.030Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:10.089352" elapsed="0.069181"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.162323" level="INFO">Item found from container 300 times.</msg>
<msg time="2026-07-28T01:58:10.162474" 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-07-28T01:58:10.158860" elapsed="0.003641"/>
</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-07-28T01:58:10.162723" elapsed="0.000409"/>
</kw>
<arg>${less_flows}</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:58:09.970490" elapsed="0.192722"/>
</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-07-28T01:58:09.969703" elapsed="0.193560"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:58:09.968958" elapsed="0.194432"/>
</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-07-28T01:58:10.244040" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:10.246603" level="INFO">GET Response : url=http://10.30.170.50: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":35178,"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":422000000}},"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":336000000}},"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":336000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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-07-28T01:58:10.247191" 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-07-28T01:58:10.164941" elapsed="0.082315"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.253681" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:3","flow-node-inventory:port-number":35178,"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":422000000}},"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":336000000}},"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":336000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":334000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":335000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":"12","byte-count":"930","duration":{"second":3,"nanosecond":133000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":306000000}},"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":212000000}},"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":212000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"23","active-flows":100,"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":"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-07-28T01:58:08.805Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:3:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"86:93:49:b5:06:41","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":54,"nanosecond":464000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:3:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:8c:5f:7d:9e:cb","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":466000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:3:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"a6:f1:19:2e:07:b9","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":"16","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":466000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":272000000},"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":51,"nanosecond":272000000},"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":51,"nanosecond":272000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":51,"nanosecond":272000000},"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":772000000},"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":54,"nanosecond":116000000},"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":772000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":771000000},"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":771000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":54,"nanosecond":116000000},"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":771000000},"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":779000000},"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":771000000},"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":779000000},"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":779000000},"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":779000000},"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":771000000},"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":779000000},"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":766000000},"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":779000000},"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":766000000},"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":766000000},"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":766000000},"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":779000000},"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":779000000},"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":779000000},"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":779000000},"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":779000000},"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":53,"nanosecond":280000000},"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":766000000},"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":765000000},"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":53,"nanosecond":280000000},"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":53,"nanosecond":280000000},"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":53,"nanosecond":280000000},"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":765000000},"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":765000000},"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":53,"nanosecond":279000000},"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":765000000},"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":762000000},"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":762000000},"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":53,"nanosecond":279000000},"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":53,"nanosecond":278000000},"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":53,"nanosecond":278000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":53,"nanosecond":277000000},"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":762000000},"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":53,"nanosecond":277000000},"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":762000000},"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":762000000},"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":762000000},"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":53,"nanosecond":277000000},"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":761000000},"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":761000000},"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":761000000},"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":53,"nanosecond":277000000},"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":53,"nanosecond":276000000},"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":761000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":276000000},"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":761000000},"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":53,"nanosecond":276000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":761000000},"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":761000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":275000000},"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":53,"nanosecond":271000000},"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":761000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":761000000},"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":761000000},"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":761000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":760000000},"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":760000000},"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":760000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":53,"nanosecond":271000000},"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":757000000},"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":779000000},"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":777000000},"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":757000000},"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":775000000},"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":775000000},"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":774000000},"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":757000000},"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":774000000},"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":774000000},"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":773000000},"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":773000000},"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":772000000},"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":772000000},"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":757000000},"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":772000000},"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":757000000},"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":772000000},"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":757000000},"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":772000000},"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":772000000},"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":772000000},"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":771000000},"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":771000000},"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":771000000},"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":771000000},"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":770000000},"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":770000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":277000000},"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":757000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":277000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":275000000},"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":52,"nanosecond":274000000},"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":52,"nanosecond":273000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":757000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":757000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":272000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":52,"nanosecond":271000000},"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":778000000},"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":775000000},"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":773000000},"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":772000000},"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":772000000},"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":772000000},"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":771000000},"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":771000000},"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":770000000},"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":770000000},"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":770000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":277000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":276000000},"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":51,"nanosecond":274000000},"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":51,"nanosecond":274000000},"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":51,"nanosecond":273000000},"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":757000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":273000000},"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":51,"nanosecond":272000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.038Z"}},{"id":"openflow:1","flow-node-inventory:port-number":35176,"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":371000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":223000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":"12","byte-count":"930","duration":{"second":3,"nanosecond":94000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"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":222000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"20","active-flows":100,"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":"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-07-28T01:58:08.798Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"aa:b1:e8:eb:b9:5d","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":54,"nanosecond":447000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"e2:e9:16:2f:fa: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":54,"nanosecond":440000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b6:85:ec:d7:60:a0","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":447000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"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":54,"nanosecond":89000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":51,"nanosecond":245000000},"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":742000000},"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":54,"nanosecond":89000000},"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":742000000},"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":54,"nanosecond":87000000},"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":54,"nanosecond":87000000},"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":742000000},"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":742000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":87000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":54,"nanosecond":88000000},"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":741000000},"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":753000000},"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":741000000},"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":753000000},"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":753000000},"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":753000000},"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":741000000},"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":752000000},"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":742000000},"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":752000000},"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":738000000},"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":738000000},"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":739000000},"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":753000000},"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":752000000},"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":752000000},"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":751000000},"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":752000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":738000000},"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":738000000},"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":53,"nanosecond":249000000},"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":738000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":249000000},"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":739000000},"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":738000000},"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":738000000},"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":738000000},"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":53,"nanosecond":250000000},"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":738000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":739000000},"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":53,"nanosecond":250000000},"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":739000000},"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":739000000},"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":738000000},"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":53,"nanosecond":250000000},"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":53,"nanosecond":250000000},"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":738000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":739000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":739000000},"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":739000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":249000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":738000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":53,"nanosecond":248000000},"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":739000000},"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":739000000},"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":739000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":246000000},"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":738000000},"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":739000000},"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":739000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":53,"nanosecond":247000000},"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":738000000},"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":750000000},"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":750000000},"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":738000000},"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":750000000},"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":750000000},"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":750000000},"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":739000000},"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":750000000},"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":750000000},"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":749000000},"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":750000000},"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":749000000},"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":750000000},"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":739000000},"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":749000000},"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":739000000},"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":749000000},"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":739000000},"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":749000000},"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":749000000},"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":750000000},"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":750000000},"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":749000000},"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":750000000},"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":750000000},"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":750000000},"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":750000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":739000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":250000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":251000000},"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":52,"nanosecond":250000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":249000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":738000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":738000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":247000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":52,"nanosecond":248000000},"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":749000000},"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":749000000},"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":749000000},"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":748000000},"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":748000000},"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":749000000},"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":748000000},"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":749000000},"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":749000000},"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":749000000},"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":749000000},"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":51,"nanosecond":249000000},"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":51,"nanosecond":249000000},"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":51,"nanosecond":248000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":248000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":247000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":738000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"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":51,"nanosecond":245000000},"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":51,"nanosecond":246000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.018Z"}},{"id":"openflow:2","flow-node-inventory:port-number":35180,"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":283000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":253000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":254000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":"23","byte-count":"1820","duration":{"second":3,"nanosecond":89000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"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":153000000}},"flags":""}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"38","active-flows":100,"packets-matched":"23"}},{"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-07-28T01:58:08.812Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:2:3","flow-node-inventory:port-number":3,"flow-node-inventory:hardware-address":"ba:bc:6d:f3:41:cf","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"f6:fd:37:0f:02:48","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":54,"nanosecond":453000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:2:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"ee:f4:81:aa:1e:c5","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":"16","received":"16"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"1321"},"receive-crc-error":"0"}},{"id":"openflow:2:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"ae:0f:54:e6:fb:59","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":"16","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":54,"nanosecond":456000000},"bytes":{"transmitted":"1321","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":51,"nanosecond":257000000},"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":758000000},"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":54,"nanosecond":99000000},"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":758000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":758000000},"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":758000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":54,"nanosecond":99000000},"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":758000000},"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":766000000},"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":758000000},"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":766000000},"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":766000000},"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":766000000},"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":758000000},"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":766000000},"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":758000000},"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":765000000},"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":758000000},"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":758000000},"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":758000000},"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":765000000},"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":765000000},"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":765000000},"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":765000000},"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":765000000},"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":53,"nanosecond":266000000},"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":758000000},"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":758000000},"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":53,"nanosecond":266000000},"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":53,"nanosecond":266000000},"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":53,"nanosecond":266000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":53,"nanosecond":265000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":53,"nanosecond":265000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":264000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":264000000},"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":53,"nanosecond":264000000},"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":758000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":758000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":259000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":758000000},"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":758000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":53,"nanosecond":258000000},"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":758000000},"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":766000000},"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":765000000},"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":758000000},"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":765000000},"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":765000000},"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":765000000},"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":758000000},"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":765000000},"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":764000000},"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":764000000},"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":764000000},"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":764000000},"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":764000000},"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":758000000},"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":763000000},"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":758000000},"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":763000000},"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":758000000},"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":763000000},"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":763000000},"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":763000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":761000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":758000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":265000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":758000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":758000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":264000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":263000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":262000000},"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":52,"nanosecond":260000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":763000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":762000000},"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":51,"nanosecond":263000000},"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":51,"nanosecond":263000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":262000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":51,"nanosecond":261000000},"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":757000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":260000000},"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":51,"nanosecond":258000000},"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":51,"nanosecond":258000000},"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":51,"nanosecond":257000000},"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":51,"nanosecond":257000000},"buckets":{"bucket-counter":[{"bucket-id":0,"byte-count":"0","packet-count":"0"}]}}}],"flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T01:58:09.030Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:10.247955" elapsed="0.010510"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.262099" level="INFO">Item found from container 594 times.</msg>
<msg time="2026-07-28T01:58:10.262199" 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-07-28T01:58:10.258711" elapsed="0.003514"/>
</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-07-28T01:58:10.262427" elapsed="0.000396"/>
</kw>
<arg>${less_groups}</arg>
<doc>Check number of groups in the inventory.</doc>
<status status="PASS" start="2026-07-28T01:58:10.164545" elapsed="0.098345"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:58:10.163854" elapsed="0.099187"/>
</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-07-28T01:58:10.264824" elapsed="0.000149"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:10.264536" elapsed="0.000475"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:10.264512" elapsed="0.000527"/>
</if>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.265608" 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-07-28T01:58:10.265270" elapsed="0.000365"/>
</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-07-28T01:58:10.266610" elapsed="0.000184"/>
</kw>
<status status="PASS" start="2026-07-28T01:58:10.266364" elapsed="0.000470"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:10.266305" elapsed="0.000554"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:58:10.270929" 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-07-28T01:58:10.267003" elapsed="0.003985"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:58:10.360808" level="INFO">*** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=12 byte_count=930 flow_count=100
*** s2 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=23 byte_count=1820 flow_count=100
*** s3 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=12 byte_count=930 flow_count=100
mininet&gt;</msg>
<msg time="2026-07-28T01:58:10.361062" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=12 byte_count=930 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-07-28T01:58:10.271187" elapsed="0.089905"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T01:58:10.361206" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:58:10.361476" level="INFO">${output} = *** s1 ------------------------------------------------------------------------
OFPST_AGGREGATE reply (OF1.3) (xid=0x2): packet_count=12 byte_count=930 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-07-28T01:58:10.266007" elapsed="0.095499"/>
</kw>
<kw name="Get Regexp Matches" owner="String">
<msg time="2026-07-28T01:58:10.362145" 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-07-28T01:58:10.361791" elapsed="0.000383"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.362879" 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-07-28T01:58:10.362343" elapsed="0.000565"/>
</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-07-28T01:58:10.363178" elapsed="0.000358"/>
</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-07-28T01:58:10.264131" elapsed="0.099498"/>
</kw>
<doc>Check Flows after mininet starts.</doc>
<status status="PASS" start="2026-07-28T01:58:10.263331" elapsed="0.100435"/>
</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-07-28T01:58:10.371918" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:10.371657" elapsed="0.000321"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:10.371632" elapsed="0.000376"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:58:10.373332" 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-07-28T01:58:10.372152" elapsed="0.001242"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:58:10.631248" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 5 links
.....
*** Stopping 3 switches
s1 s2 s3 
*** Stopping 3 hosts
h1 h2 h3 
*** Done
completed in 56.261 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:10.373594" elapsed="0.257854"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:10.631889" elapsed="0.000329"/>
</kw>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T01:58:10.369620" elapsed="0.262708"/>
</kw>
<doc>Stop Mininet.</doc>
<status status="PASS" start="2026-07-28T01:58:10.364130" elapsed="0.268440"/>
</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-07-28T01:58:10.648070" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:10.648734" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:58:10.649013" 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-07-28T01:58:10.635320" elapsed="0.013751"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.655214" 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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow: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-07-28T01:58:10.649598" elapsed="0.005742"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="Should Not Contain" owner="BuiltIn">
<msg time="2026-07-28T01:58:10.663255" 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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"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-07-28T01:58:10.660639" elapsed="0.002707">'{"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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"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-07-28T01:58:10.660440" elapsed="0.002989">'{"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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"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-07-28T01:58:10.655534" elapsed="0.008026">'{"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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"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-07-28T01:58:10.634811" elapsed="0.028899">'{"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']"}],"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:3']"},{"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']"}],"opendaylight-topology-inventory:inventory-node-ref":"/opendaylight-inventory:nodes/node[id='openflow:1']"}]},{"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-07-28T01:58:11.680084" level="INFO">GET Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:11.680565" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:11.680826" 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-07-28T01:58:11.665955" elapsed="0.014957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:11.686110" 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-07-28T01:58:11.681499" elapsed="0.004683"/>
</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-07-28T01:58:11.689737" elapsed="0.003503"/>
</kw>
<var name="${switch}">1</var>
<status status="PASS" start="2026-07-28T01:58:11.689482" elapsed="0.003819"/>
</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-07-28T01:58:11.693705" elapsed="0.006734"/>
</kw>
<var name="${switch}">2</var>
<status status="PASS" start="2026-07-28T01:58:11.693423" elapsed="0.007178"/>
</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-07-28T01:58:11.701502" elapsed="0.006593"/>
</kw>
<var name="${switch}">3</var>
<status status="PASS" start="2026-07-28T01:58:11.700909" elapsed="0.007285"/>
</iter>
<var>${switch}</var>
<value>1</value>
<value>${switches+1}</value>
<status status="PASS" start="2026-07-28T01:58:11.686265" elapsed="0.021979"/>
</for>
<arg>${SWITCHES}</arg>
<doc>Check no switch is in topology</doc>
<status status="PASS" start="2026-07-28T01:58:11.664853" elapsed="0.043468"/>
</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-07-28T01:58:10.633795" elapsed="1.074611"/>
</kw>
<doc>Check no switches in topology.</doc>
<status status="PASS" start="2026-07-28T01:58:10.633047" elapsed="1.075514"/>
</test>
<kw name="Final Phase" type="TEARDOWN">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:11.709869" 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-07-28T01:58:11.709588" elapsed="0.000308"/>
</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-07-28T01:58:11.712332" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:11.711987" elapsed="0.000404"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:11.711958" elapsed="0.000458"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:11.712836" 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-07-28T01:58:11.712944" 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-07-28T01:58:11.712611" elapsed="0.000417"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:11.713676" level="INFO">Attempting to execute command "sudo iptables -v -F" on remote system "10.30.170.50" 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-07-28T01:58:11.713228" elapsed="0.000497"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:11.714306" 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-07-28T01:58:11.713887" elapsed="0.000445"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:11.715300" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:11.715377" 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-07-28T01:58:11.714981" elapsed="0.000420"/>
</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-07-28T01:58:11.715593" elapsed="0.000371"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:11.716952" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:12.045709" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:09 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:11.716594" elapsed="0.329352"/>
</kw>
<msg time="2026-07-28T01:58:12.046066" 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-07-28T01:58:11.716176" elapsed="0.330024"/>
</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-07-28T01:58:11.714574" elapsed="0.331775"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.047643" level="INFO">Executing command 'sudo iptables -v -F'.</msg>
<msg time="2026-07-28T01:58:12.090677" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:12.091077" 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-07-28T01:58:12.091204" 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-07-28T01:58:12.046772" elapsed="0.044485"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.091761" elapsed="0.000566"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.093861" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:12.092947" elapsed="0.001018"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.094674" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:12.094227" elapsed="0.000594"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.094162" elapsed="0.000713"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:12.095437" elapsed="0.000106"/>
</return>
<status status="PASS" start="2026-07-28T01:58:12.095091" elapsed="0.000605"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.095043" elapsed="0.000721"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.095862" 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-07-28T01:58:12.101695" elapsed="0.000538"/>
</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-07-28T01:58:12.102558" elapsed="0.000251"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.103092" elapsed="0.000146"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:12.096871" elapsed="0.006443"/>
</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-07-28T01:58:11.711399" elapsed="0.392116"/>
</kw>
<msg time="2026-07-28T01:58:12.103614" 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-07-28T01:58:11.710696" elapsed="0.393006"/>
</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-07-28T01:58:11.710138" elapsed="0.393756"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:12.118706" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01tg73y1m9jk1c1nlr16dd0pwb812.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:12.118754" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:12.104786" elapsed="0.014041"/>
</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-07-28T01:58:12.104182" elapsed="0.014734"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:12.119174" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:58:12.119091" elapsed="0.001005"/>
</kw>
<doc>Delete all sessions.</doc>
<status status="PASS" start="2026-07-28T01:58:11.709275" elapsed="0.410983"/>
</kw>
<doc>Test reconciliation of chained groups and flows after switch connection and controller are restarted.</doc>
<status status="PASS" start="2026-07-28T01:57:07.305804" elapsed="64.814617"/>
</suite>
<status status="PASS" start="2026-07-28T01:57:07.304404" elapsed="64.819004"/>
</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-07-28T01:58:12.171514" 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-07-28T01:58:12.171114" elapsed="0.000430"/>
</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-07-28T01:58:12.172917" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:12.172614" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.172591" elapsed="0.000409"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.173320" 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-07-28T01:58:12.173487" 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-07-28T01:58:12.173165" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.174120" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.50" 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-07-28T01:58:12.173645" elapsed="0.000526"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.174737" 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-07-28T01:58:12.174304" elapsed="0.000478"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.175718" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:12.175844" 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-07-28T01:58:12.175406" elapsed="0.000464"/>
</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-07-28T01:58:12.176008" elapsed="0.000396"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.177285" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:12.501649" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:11 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:12.176955" elapsed="0.324863"/>
</kw>
<msg time="2026-07-28T01:58:12.501909" 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-07-28T01:58:12.176568" elapsed="0.325432"/>
</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-07-28T01:58:12.174981" elapsed="0.327234"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.502771" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-07-28T01:58:12.525950" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:12.526203" level="INFO">${stdout} = 4978</msg>
<msg time="2026-07-28T01:58:12.526302" 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-07-28T01:58:12.502448" elapsed="0.023905"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.526724" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.528165" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:12.527540" elapsed="0.000718"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.528774" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:12.528434" elapsed="0.000451"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.528383" elapsed="0.000554"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:12.529287" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-07-28T01:58:12.529054" elapsed="0.000365"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.529022" elapsed="0.000482"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.529583" 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-07-28T01:58:12.534716" elapsed="0.000674"/>
</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-07-28T01:58:12.535548" elapsed="0.000171"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.535840" 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-07-28T01:58:12.530238" elapsed="0.005751"/>
</kw>
<msg time="2026-07-28T01:58:12.536112" level="INFO">${output} = 4978</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-07-28T01:58:12.171913" elapsed="0.364223"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:12.536536" level="INFO">${pid} = 4978</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-07-28T01:58:12.536299" elapsed="0.000262"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-07-28T01:58:12.536609" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:12.536762" level="INFO">${output} = 4978</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-07-28T01:58:12.168899" elapsed="0.367888"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.537179" level="INFO">4978</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:12.536932" elapsed="0.000291"/>
</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-07-28T01:58:12.539765" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:12.539525" elapsed="0.000296"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.539507" elapsed="0.000338"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.540114" 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-07-28T01:58:12.540218" 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-07-28T01:58:12.539971" elapsed="0.000273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.540768" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.50" 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-07-28T01:58:12.540368" elapsed="0.000447"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.541318" 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-07-28T01:58:12.540944" elapsed="0.000402"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.542203" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:12.542286" 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-07-28T01:58:12.541916" 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-07-28T01:58:12.542495" elapsed="0.000356"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.543695" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:12.869137" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:12 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:12.543336" elapsed="0.325955"/>
</kw>
<msg time="2026-07-28T01:58:12.869371" 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-07-28T01:58:12.542998" elapsed="0.326475"/>
</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-07-28T01:58:12.541551" elapsed="0.328041"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.870057" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-07-28T01:58:12.882792" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:58:12.882957" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:12.883020" 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-07-28T01:58:12.869809" elapsed="0.013242"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.883251" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.884221" 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-07-28T01:58:12.883811" elapsed="0.000479"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.884634" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:12.884408" elapsed="0.000297"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.884372" elapsed="0.000367"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:12.884960" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:58:12.884812" elapsed="0.000229"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.884792" elapsed="0.000282"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:12.885121" 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-07-28T01:58:12.888340" elapsed="0.000485"/>
</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-07-28T01:58:12.889021" elapsed="0.000225"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:12.889436" elapsed="0.000173"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:12.885559" elapsed="0.004122"/>
</kw>
<msg time="2026-07-28T01:58:12.889850" 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-07-28T01:58:12.537575" elapsed="0.352310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.890489" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:12.890084" elapsed="0.000466"/>
</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-07-28T01:58:12.165244" elapsed="0.725387"/>
</kw>
<kw name="Get Process ID Based On Regex On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.898244" 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-07-28T01:58:12.897820" elapsed="0.000461"/>
</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-07-28T01:58:12.899811" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:12.899571" elapsed="0.000297"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:12.899552" elapsed="0.000341"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.900157" 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-07-28T01:58:12.900319" 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-07-28T01:58:12.900016" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.900883" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.50" 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-07-28T01:58:12.900500" elapsed="0.000431"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.901437" 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-07-28T01:58:12.901061" elapsed="0.000416"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:12.902332" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:12.902438" 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-07-28T01:58:12.902031" elapsed="0.000456"/>
</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-07-28T01:58:12.902628" elapsed="0.000324"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:12.903757" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:13.229348" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:12 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:12.903424" elapsed="0.326076"/>
</kw>
<msg time="2026-07-28T01:58:13.229575" 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-07-28T01:58:12.903094" elapsed="0.326560"/>
</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-07-28T01:58:12.901667" elapsed="0.328090"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:13.230199" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-07-28T01:58:13.252774" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:13.253020" level="INFO">${stdout} = 4978</msg>
<msg time="2026-07-28T01:58:13.253117" 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-07-28T01:58:13.229957" elapsed="0.023210"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:13.253512" elapsed="0.000464"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.254981" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:13.254331" 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-07-28T01:58:13.255566" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:13.255245" elapsed="0.000427"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:13.255196" elapsed="0.000526"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:13.256073" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-07-28T01:58:13.255839" elapsed="0.000367"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:13.255806" elapsed="0.000453"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:13.256334" 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-07-28T01:58:13.261329" elapsed="0.000764"/>
</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-07-28T01:58:13.262495" elapsed="0.000366"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:13.263132" elapsed="0.000213"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:13.256995" elapsed="0.006403"/>
</kw>
<msg time="2026-07-28T01:58:13.263535" level="INFO">${output} = 4978</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-07-28T01:58:12.898772" elapsed="0.364788"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:13.263978" level="INFO">${pid} = 4978</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-07-28T01:58:13.263765" elapsed="0.000239"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-07-28T01:58:13.264050" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:13.264204" level="INFO">${controller_pid} = 4978</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-07-28T01:58:12.895132" elapsed="0.369096"/>
</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-07-28T01:58:13.264381" elapsed="0.000345"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.267176" level="INFO">${cmd} = ps --no-headers -o nlwp 4978</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-07-28T01:58:13.266879" elapsed="0.000324"/>
</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-07-28T01:58:13.268351" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:13.268116" elapsed="0.000291"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:13.268098" elapsed="0.000333"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:13.268703" 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-07-28T01:58:13.268804" 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-07-28T01:58:13.268566" elapsed="0.000265"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.269331" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4978" on remote system "10.30.170.50" 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-07-28T01:58:13.268952" elapsed="0.000425"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:13.269885" 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-07-28T01:58:13.269520" elapsed="0.000391"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.270777" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:13.270853" 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-07-28T01:58:13.270494" 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-07-28T01:58:13.271007" elapsed="0.000315"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:13.272285" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:13.593554" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:13 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:13.271808" elapsed="0.321925"/>
</kw>
<msg time="2026-07-28T01:58:13.593823" 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-07-28T01:58:13.271477" elapsed="0.322444"/>
</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-07-28T01:58:13.270098" elapsed="0.323953"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:13.594654" level="INFO">Executing command 'ps --no-headers -o nlwp 4978'.</msg>
<msg time="2026-07-28T01:58:13.607128" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:13.607256" level="INFO">${stdout} =  159</msg>
<msg time="2026-07-28T01:58:13.607301" 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-07-28T01:58:13.594326" elapsed="0.012998"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:13.607488" elapsed="0.000365"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.608357" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:13.608028" elapsed="0.000372"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:13.608785" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:13.608608" elapsed="0.000234"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:13.608487" elapsed="0.000381"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:13.609036" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-07-28T01:58:13.608924" elapsed="0.000174"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:13.608908" elapsed="0.000214"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:13.609156" 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-07-28T01:58:13.611580" elapsed="0.000337"/>
</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-07-28T01:58:13.612055" elapsed="0.000167"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:13.612343" elapsed="0.000100"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:13.609495" elapsed="0.003017"/>
</kw>
<msg time="2026-07-28T01:58:13.612636" level="INFO">${output} =  159</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-07-28T01:58:13.267534" elapsed="0.345127"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:13.613037" level="INFO">${thread_count} =  159</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-07-28T01:58:13.612817" elapsed="0.000245"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-07-28T01:58:13.613109" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:13.613269" level="INFO">${starting_thread_count} =  159</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-07-28T01:58:13.264912" elapsed="0.348383"/>
</kw>
<kw name="Repeat Keyword" owner="BuiltIn">
<msg time="2026-07-28T01:58:13.613809" level="INFO">Repeating keyword, round 1/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.614351" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.613950" elapsed="0.002174"/>
</kw>
<msg time="2026-07-28T01:58:13.616181" level="INFO">Repeating keyword, round 2/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.616690" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.616317" elapsed="0.001781"/>
</kw>
<msg time="2026-07-28T01:58:13.618185" level="INFO">Repeating keyword, round 3/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.618750" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.618325" elapsed="0.001140"/>
</kw>
<msg time="2026-07-28T01:58:13.619523" level="INFO">Repeating keyword, round 4/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.620003" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.619660" elapsed="0.001598"/>
</kw>
<msg time="2026-07-28T01:58:13.621321" level="INFO">Repeating keyword, round 5/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.621905" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.621501" elapsed="0.001017"/>
</kw>
<msg time="2026-07-28T01:58:13.622576" level="INFO">Repeating keyword, round 6/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.623049" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.622712" elapsed="0.001607"/>
</kw>
<msg time="2026-07-28T01:58:13.624380" level="INFO">Repeating keyword, round 7/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.624945" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.624543" elapsed="0.000900"/>
</kw>
<msg time="2026-07-28T01:58:13.625519" level="INFO">Repeating keyword, round 8/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.626000" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.625657" elapsed="0.001389"/>
</kw>
<msg time="2026-07-28T01:58:13.627166" level="INFO">Repeating keyword, round 9/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.628298" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.627590" elapsed="0.001968"/>
</kw>
<msg time="2026-07-28T01:58:13.629682" level="INFO">Repeating keyword, round 10/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.630776" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.629972" elapsed="0.001422"/>
</kw>
<msg time="2026-07-28T01:58:13.631636" level="INFO">Repeating keyword, round 11/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.632778" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.631925" elapsed="0.001517"/>
</kw>
<msg time="2026-07-28T01:58:13.633586" level="INFO">Repeating keyword, round 12/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.634517" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.633919" elapsed="0.001066"/>
</kw>
<msg time="2026-07-28T01:58:13.635064" level="INFO">Repeating keyword, round 13/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.635713" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.635247" elapsed="0.000920"/>
</kw>
<msg time="2026-07-28T01:58:13.636239" level="INFO">Repeating keyword, round 14/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.636918" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.636422" elapsed="0.002172"/>
</kw>
<msg time="2026-07-28T01:58:13.638679" level="INFO">Repeating keyword, round 15/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.639388" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.638870" elapsed="0.001118"/>
</kw>
<msg time="2026-07-28T01:58:13.640068" level="INFO">Repeating keyword, round 16/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.640686" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.640245" elapsed="0.002041"/>
</kw>
<msg time="2026-07-28T01:58:13.642365" level="INFO">Repeating keyword, round 17/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.643030" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.642603" elapsed="0.000983"/>
</kw>
<msg time="2026-07-28T01:58:13.643648" level="INFO">Repeating keyword, round 18/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.644303" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.643831" elapsed="0.002084"/>
</kw>
<msg time="2026-07-28T01:58:13.645992" level="INFO">Repeating keyword, round 19/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.646699" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.646265" elapsed="0.000985"/>
</kw>
<msg time="2026-07-28T01:58:13.647327" level="INFO">Repeating keyword, round 20/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.647985" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.647534" elapsed="0.002322"/>
</kw>
<msg time="2026-07-28T01:58:13.649934" level="INFO">Repeating keyword, round 21/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.650683" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.650204" elapsed="0.001169"/>
</kw>
<msg time="2026-07-28T01:58:13.651479" level="INFO">Repeating keyword, round 22/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.652274" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.651712" elapsed="0.002109"/>
</kw>
<msg time="2026-07-28T01:58:13.653904" level="INFO">Repeating keyword, round 23/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.654605" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.654149" elapsed="0.000958"/>
</kw>
<msg time="2026-07-28T01:58:13.655178" level="INFO">Repeating keyword, round 24/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.655843" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.655363" elapsed="0.002139"/>
</kw>
<msg time="2026-07-28T01:58:13.657581" level="INFO">Repeating keyword, round 25/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.658233" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.657765" elapsed="0.000981"/>
</kw>
<msg time="2026-07-28T01:58:13.658848" level="INFO">Repeating keyword, round 26/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.659373" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.659022" elapsed="0.001656"/>
</kw>
<msg time="2026-07-28T01:58:13.660738" level="INFO">Repeating keyword, round 27/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.661281" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.660877" elapsed="0.000878"/>
</kw>
<msg time="2026-07-28T01:58:13.661813" level="INFO">Repeating keyword, round 28/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.662320" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.661950" elapsed="0.001767"/>
</kw>
<msg time="2026-07-28T01:58:13.663787" level="INFO">Repeating keyword, round 29/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.664338" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.663927" elapsed="0.001918"/>
</kw>
<msg time="2026-07-28T01:58:13.665906" level="INFO">Repeating keyword, round 30/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.666477" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.666064" elapsed="0.000879"/>
</kw>
<msg time="2026-07-28T01:58:13.667006" level="INFO">Repeating keyword, round 31/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.667581" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.667156" elapsed="0.001763"/>
</kw>
<msg time="2026-07-28T01:58:13.668992" level="INFO">Repeating keyword, round 32/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.669842" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.669224" elapsed="0.001149"/>
</kw>
<msg time="2026-07-28T01:58:13.670441" level="INFO">Repeating keyword, round 33/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.670945" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.670603" elapsed="0.001655"/>
</kw>
<msg time="2026-07-28T01:58:13.672342" level="INFO">Repeating keyword, round 34/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.673028" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.672562" elapsed="0.001060"/>
</kw>
<msg time="2026-07-28T01:58:13.673730" level="INFO">Repeating keyword, round 35/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.674248" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.673876" elapsed="0.001646"/>
</kw>
<msg time="2026-07-28T01:58:13.675581" level="INFO">Repeating keyword, round 36/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.676104" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.675719" elapsed="0.000871"/>
</kw>
<msg time="2026-07-28T01:58:13.676649" level="INFO">Repeating keyword, round 37/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.677168" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.676824" elapsed="0.001806"/>
</kw>
<msg time="2026-07-28T01:58:13.678708" level="INFO">Repeating keyword, round 38/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.679312" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.678920" elapsed="0.000903"/>
</kw>
<msg time="2026-07-28T01:58:13.679912" level="INFO">Repeating keyword, round 39/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.680404" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.680061" elapsed="0.001587"/>
</kw>
<msg time="2026-07-28T01:58:13.681707" level="INFO">Repeating keyword, round 40/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.682254" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.681845" elapsed="0.001032"/>
</kw>
<msg time="2026-07-28T01:58:13.682966" level="INFO">Repeating keyword, round 41/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.683476" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.683112" elapsed="0.001633"/>
</kw>
<msg time="2026-07-28T01:58:13.684805" level="INFO">Repeating keyword, round 42/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.685324" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.684942" elapsed="0.001706"/>
</kw>
<msg time="2026-07-28T01:58:13.686715" level="INFO">Repeating keyword, round 43/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.687242" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.686852" elapsed="0.000896"/>
</kw>
<msg time="2026-07-28T01:58:13.687809" level="INFO">Repeating keyword, round 44/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.688333" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.687985" elapsed="0.001689"/>
</kw>
<msg time="2026-07-28T01:58:13.689745" level="INFO">Repeating keyword, round 45/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.690414" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.689915" elapsed="0.001200"/>
</kw>
<msg time="2026-07-28T01:58:13.691176" level="INFO">Repeating keyword, round 46/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.691771" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.691392" elapsed="0.001645"/>
</kw>
<msg time="2026-07-28T01:58:13.693108" level="INFO">Repeating keyword, round 47/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.693660" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.693252" elapsed="0.001926"/>
</kw>
<msg time="2026-07-28T01:58:13.695238" level="INFO">Repeating keyword, round 48/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.695923" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.695415" elapsed="0.001230"/>
</kw>
<msg time="2026-07-28T01:58:13.696715" level="INFO">Repeating keyword, round 49/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.697322" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.696865" elapsed="0.002064"/>
</kw>
<msg time="2026-07-28T01:58:13.699012" level="INFO">Repeating keyword, round 50/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.699700" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.699215" elapsed="0.000978"/>
</kw>
<msg time="2026-07-28T01:58:13.700253" level="INFO">Repeating keyword, round 51/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.700798" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.700423" elapsed="0.001787"/>
</kw>
<msg time="2026-07-28T01:58:13.702271" level="INFO">Repeating keyword, round 52/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.702831" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.702411" elapsed="0.000889"/>
</kw>
<msg time="2026-07-28T01:58:13.703359" level="INFO">Repeating keyword, round 53/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.703895" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.703550" elapsed="0.001647"/>
</kw>
<msg time="2026-07-28T01:58:13.705258" level="INFO">Repeating keyword, round 54/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.705820" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.705395" elapsed="0.000971"/>
</kw>
<msg time="2026-07-28T01:58:13.706425" level="INFO">Repeating keyword, round 55/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.707115" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.706615" elapsed="0.001757"/>
</kw>
<msg time="2026-07-28T01:58:13.708443" level="INFO">Repeating keyword, round 56/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.708986" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.708601" elapsed="0.001032"/>
</kw>
<msg time="2026-07-28T01:58:13.709692" level="INFO">Repeating keyword, round 57/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.710257" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.709867" elapsed="0.001693"/>
</kw>
<msg time="2026-07-28T01:58:13.711628" level="INFO">Repeating keyword, round 58/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.712173" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.711771" elapsed="0.001792"/>
</kw>
<msg time="2026-07-28T01:58:13.713623" level="INFO">Repeating keyword, round 59/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.714193" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.713761" elapsed="0.001020"/>
</kw>
<msg time="2026-07-28T01:58:13.714875" level="INFO">Repeating keyword, round 60/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.715362" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.715014" elapsed="0.001697"/>
</kw>
<msg time="2026-07-28T01:58:13.716774" level="INFO">Repeating keyword, round 61/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.717306" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.716915" elapsed="0.000915"/>
</kw>
<msg time="2026-07-28T01:58:13.717889" level="INFO">Repeating keyword, round 62/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.718384" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.718042" elapsed="0.001670"/>
</kw>
<msg time="2026-07-28T01:58:13.719780" level="INFO">Repeating keyword, round 63/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.720486" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.719957" elapsed="0.001100"/>
</kw>
<msg time="2026-07-28T01:58:13.721243" level="INFO">Repeating keyword, round 64/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.721947" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.721451" elapsed="0.002118"/>
</kw>
<msg time="2026-07-28T01:58:13.723649" level="INFO">Repeating keyword, round 65/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.724356" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.723893" elapsed="0.001078"/>
</kw>
<msg time="2026-07-28T01:58:13.725045" level="INFO">Repeating keyword, round 66/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.725701" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.725224" elapsed="0.001387"/>
</kw>
<msg time="2026-07-28T01:58:13.726759" level="INFO">Repeating keyword, round 67/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.727515" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.726972" elapsed="0.001102"/>
</kw>
<msg time="2026-07-28T01:58:13.728158" level="INFO">Repeating keyword, round 68/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.729022" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.728365" elapsed="0.001347"/>
</kw>
<msg time="2026-07-28T01:58:13.729801" level="INFO">Repeating keyword, round 69/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.730627" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.730041" elapsed="0.001206"/>
</kw>
<msg time="2026-07-28T01:58:13.731366" level="INFO">Repeating keyword, round 70/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.732167" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.731605" elapsed="0.002579"/>
</kw>
<msg time="2026-07-28T01:58:13.734287" level="INFO">Repeating keyword, round 71/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.735255" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.734583" elapsed="0.001426"/>
</kw>
<msg time="2026-07-28T01:58:13.736091" level="INFO">Repeating keyword, round 72/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.736693" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.736300" elapsed="0.001731"/>
</kw>
<msg time="2026-07-28T01:58:13.738092" level="INFO">Repeating keyword, round 73/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.738667" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.738233" elapsed="0.000939"/>
</kw>
<msg time="2026-07-28T01:58:13.739263" level="INFO">Repeating keyword, round 74/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.739793" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.739402" elapsed="0.001657"/>
</kw>
<msg time="2026-07-28T01:58:13.741120" level="INFO">Repeating keyword, round 75/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.741683" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.741260" elapsed="0.000944"/>
</kw>
<msg time="2026-07-28T01:58:13.742262" level="INFO">Repeating keyword, round 76/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.742796" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.742429" elapsed="0.001653"/>
</kw>
<msg time="2026-07-28T01:58:13.744141" level="INFO">Repeating keyword, round 77/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.744701" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.744325" elapsed="0.000871"/>
</kw>
<msg time="2026-07-28T01:58:13.745253" level="INFO">Repeating keyword, round 78/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.748032" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.745450" elapsed="0.003089"/>
</kw>
<msg time="2026-07-28T01:58:13.748607" level="INFO">Repeating keyword, round 79/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.749119" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.748748" elapsed="0.001664"/>
</kw>
<msg time="2026-07-28T01:58:13.750495" level="INFO">Repeating keyword, round 80/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.751024" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.750636" elapsed="0.000937"/>
</kw>
<msg time="2026-07-28T01:58:13.751633" level="INFO">Repeating keyword, round 81/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.752152" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.751771" elapsed="0.001411"/>
</kw>
<msg time="2026-07-28T01:58:13.753298" level="INFO">Repeating keyword, round 82/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.753836" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.753437" elapsed="0.001922"/>
</kw>
<msg time="2026-07-28T01:58:13.755428" level="INFO">Repeating keyword, round 83/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.755973" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.755588" elapsed="0.000904"/>
</kw>
<msg time="2026-07-28T01:58:13.756551" level="INFO">Repeating keyword, round 84/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.757065" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.756687" elapsed="0.001679"/>
</kw>
<msg time="2026-07-28T01:58:13.758426" level="INFO">Repeating keyword, round 85/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.758980" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.758597" elapsed="0.001782"/>
</kw>
<msg time="2026-07-28T01:58:13.760438" level="INFO">Repeating keyword, round 86/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.760976" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.760621" elapsed="0.000891"/>
</kw>
<msg time="2026-07-28T01:58:13.761579" level="INFO">Repeating keyword, round 87/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.762110" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.761717" elapsed="0.001673"/>
</kw>
<msg time="2026-07-28T01:58:13.763462" level="INFO">Repeating keyword, round 88/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.764026" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.763607" elapsed="0.000939"/>
</kw>
<msg time="2026-07-28T01:58:13.764602" level="INFO">Repeating keyword, round 89/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.765073" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.764737" elapsed="0.001604"/>
</kw>
<msg time="2026-07-28T01:58:13.766401" level="INFO">Repeating keyword, round 90/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.766938" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.766554" elapsed="0.000967"/>
</kw>
<msg time="2026-07-28T01:58:13.767581" level="INFO">Repeating keyword, round 91/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.768096" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.767718" elapsed="0.001730"/>
</kw>
<msg time="2026-07-28T01:58:13.769538" level="INFO">Repeating keyword, round 92/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.770085" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.769676" elapsed="0.001879"/>
</kw>
<msg time="2026-07-28T01:58:13.771614" level="INFO">Repeating keyword, round 93/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.772133" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.771751" elapsed="0.000994"/>
</kw>
<msg time="2026-07-28T01:58:13.772804" level="INFO">Repeating keyword, round 94/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.773333" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.772995" elapsed="0.001635"/>
</kw>
<msg time="2026-07-28T01:58:13.774689" level="INFO">Repeating keyword, round 95/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.775209" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.774824" elapsed="0.000878"/>
</kw>
<msg time="2026-07-28T01:58:13.775758" level="INFO">Repeating keyword, round 96/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.776264" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.775927" elapsed="0.001614"/>
</kw>
<msg time="2026-07-28T01:58:13.777600" level="INFO">Repeating keyword, round 97/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.778170" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.777735" elapsed="0.001015"/>
</kw>
<msg time="2026-07-28T01:58:13.778806" level="INFO">Repeating keyword, round 98/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.779277" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.778942" elapsed="0.001664"/>
</kw>
<msg time="2026-07-28T01:58:13.780667" level="INFO">Repeating keyword, round 99/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.781263" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.780805" elapsed="0.001032"/>
</kw>
<msg time="2026-07-28T01:58:13.781915" level="INFO">Repeating keyword, round 100/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.782419" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.782075" elapsed="0.001644"/>
</kw>
<msg time="2026-07-28T01:58:13.783779" level="INFO">Repeating keyword, round 101/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.784443" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.783918" elapsed="0.001867"/>
</kw>
<msg time="2026-07-28T01:58:13.785846" level="INFO">Repeating keyword, round 102/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.786406" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.786000" elapsed="0.000942"/>
</kw>
<msg time="2026-07-28T01:58:13.786998" level="INFO">Repeating keyword, round 103/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.787574" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.787204" elapsed="0.001647"/>
</kw>
<msg time="2026-07-28T01:58:13.788910" level="INFO">Repeating keyword, round 104/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.789476" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.789047" elapsed="0.000950"/>
</kw>
<msg time="2026-07-28T01:58:13.790062" level="INFO">Repeating keyword, round 105/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.790612" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.790200" elapsed="0.001668"/>
</kw>
<msg time="2026-07-28T01:58:13.791936" level="INFO">Repeating keyword, round 106/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.792497" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.792072" elapsed="0.001732"/>
</kw>
<msg time="2026-07-28T01:58:13.793863" level="INFO">Repeating keyword, round 107/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.794416" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.794020" elapsed="0.000924"/>
</kw>
<msg time="2026-07-28T01:58:13.795031" level="INFO">Repeating keyword, round 108/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.795525" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.795167" elapsed="0.001616"/>
</kw>
<msg time="2026-07-28T01:58:13.796843" level="INFO">Repeating keyword, round 109/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.797369" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.796981" elapsed="0.001021"/>
</kw>
<msg time="2026-07-28T01:58:13.798062" level="INFO">Repeating keyword, round 110/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.798645" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.798232" elapsed="0.001659"/>
</kw>
<msg time="2026-07-28T01:58:13.799949" level="INFO">Repeating keyword, round 111/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.800509" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.800086" elapsed="0.000918"/>
</kw>
<msg time="2026-07-28T01:58:13.801088" level="INFO">Repeating keyword, round 112/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.801589" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.801230" elapsed="0.001673"/>
</kw>
<msg time="2026-07-28T01:58:13.802975" level="INFO">Repeating keyword, round 113/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.803521" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.803114" elapsed="0.001879"/>
</kw>
<msg time="2026-07-28T01:58:13.805052" level="INFO">Repeating keyword, round 114/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.805606" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.805202" elapsed="0.001120"/>
</kw>
<msg time="2026-07-28T01:58:13.806379" level="INFO">Repeating keyword, round 115/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.806946" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.806591" elapsed="0.001641"/>
</kw>
<msg time="2026-07-28T01:58:13.808292" level="INFO">Repeating keyword, round 116/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.808849" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.808430" elapsed="0.001049"/>
</kw>
<msg time="2026-07-28T01:58:13.809634" level="INFO">Repeating keyword, round 117/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.810142" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.809776" elapsed="0.001609"/>
</kw>
<msg time="2026-07-28T01:58:13.811445" level="INFO">Repeating keyword, round 118/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.812058" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.811604" elapsed="0.001175"/>
</kw>
<msg time="2026-07-28T01:58:13.812848" level="INFO">Repeating keyword, round 119/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.813328" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.812986" elapsed="0.001722"/>
</kw>
<msg time="2026-07-28T01:58:13.814771" level="INFO">Repeating keyword, round 120/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.815353" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.814960" elapsed="0.000957"/>
</kw>
<msg time="2026-07-28T01:58:13.815979" level="INFO">Repeating keyword, round 121/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.816478" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.816116" elapsed="0.001668"/>
</kw>
<msg time="2026-07-28T01:58:13.817870" level="INFO">Repeating keyword, round 122/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.818430" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.818076" elapsed="0.000892"/>
</kw>
<msg time="2026-07-28T01:58:13.819023" level="INFO">Repeating keyword, round 123/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.819561" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.819198" elapsed="0.001619"/>
</kw>
<msg time="2026-07-28T01:58:13.820877" level="INFO">Repeating keyword, round 124/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.821551" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.821046" elapsed="0.001923"/>
</kw>
<msg time="2026-07-28T01:58:13.823028" level="INFO">Repeating keyword, round 125/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.823568" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.823165" elapsed="0.000898"/>
</kw>
<msg time="2026-07-28T01:58:13.824118" level="INFO">Repeating keyword, round 126/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.824661" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.824286" elapsed="0.001719"/>
</kw>
<msg time="2026-07-28T01:58:13.826064" level="INFO">Repeating keyword, round 127/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.826621" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.826202" elapsed="0.000924"/>
</kw>
<msg time="2026-07-28T01:58:13.827229" level="INFO">Repeating keyword, round 128/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.827767" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.827406" elapsed="0.001626"/>
</kw>
<msg time="2026-07-28T01:58:13.829091" level="INFO">Repeating keyword, round 129/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.829622" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.829229" elapsed="0.000923"/>
</kw>
<msg time="2026-07-28T01:58:13.830207" level="INFO">Repeating keyword, round 130/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.830891" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.830341" elapsed="0.001877"/>
</kw>
<msg time="2026-07-28T01:58:13.832276" level="INFO">Repeating keyword, round 131/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.832825" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.832411" elapsed="0.000934"/>
</kw>
<msg time="2026-07-28T01:58:13.833426" level="INFO">Repeating keyword, round 132/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.833938" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.833601" elapsed="0.001665"/>
</kw>
<msg time="2026-07-28T01:58:13.835422" level="INFO">Repeating keyword, round 133/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.835987" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.835640" elapsed="0.000917"/>
</kw>
<msg time="2026-07-28T01:58:13.836614" level="INFO">Repeating keyword, round 134/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.837083" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.836748" elapsed="0.001623"/>
</kw>
<msg time="2026-07-28T01:58:13.838522" level="INFO">Repeating keyword, round 135/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.839080" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.838708" elapsed="0.000987"/>
</kw>
<msg time="2026-07-28T01:58:13.839753" level="INFO">Repeating keyword, round 136/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.840227" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.839891" elapsed="0.001665"/>
</kw>
<msg time="2026-07-28T01:58:13.841614" level="INFO">Repeating keyword, round 137/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.842196" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.841765" elapsed="0.001800"/>
</kw>
<msg time="2026-07-28T01:58:13.843625" level="INFO">Repeating keyword, round 138/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.844156" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.843763" elapsed="0.000958"/>
</kw>
<msg time="2026-07-28T01:58:13.844781" level="INFO">Repeating keyword, round 139/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.845253" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.844916" elapsed="0.001652"/>
</kw>
<msg time="2026-07-28T01:58:13.846627" level="INFO">Repeating keyword, round 140/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.847161" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.846797" elapsed="0.000898"/>
</kw>
<msg time="2026-07-28T01:58:13.847795" level="INFO">Repeating keyword, round 141/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.848274" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.847934" elapsed="0.001664"/>
</kw>
<msg time="2026-07-28T01:58:13.849658" level="INFO">Repeating keyword, round 142/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.850260" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.849894" elapsed="0.001776"/>
</kw>
<msg time="2026-07-28T01:58:13.851729" level="INFO">Repeating keyword, round 143/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.852256" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.851865" elapsed="0.000939"/>
</kw>
<msg time="2026-07-28T01:58:13.852862" level="INFO">Repeating keyword, round 144/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.853334" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.852998" elapsed="0.001564"/>
</kw>
<msg time="2026-07-28T01:58:13.854620" level="INFO">Repeating keyword, round 145/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.855095" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.854757" elapsed="0.000948"/>
</kw>
<msg time="2026-07-28T01:58:13.855822" level="INFO">Repeating keyword, round 146/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.856321" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.855968" elapsed="0.001846"/>
</kw>
<msg time="2026-07-28T01:58:13.857873" level="INFO">Repeating keyword, round 147/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.858705" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.858156" elapsed="0.001122"/>
</kw>
<msg time="2026-07-28T01:58:13.859334" level="INFO">Repeating keyword, round 148/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.859905" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.859551" elapsed="0.001681"/>
</kw>
<msg time="2026-07-28T01:58:13.861292" level="INFO">Repeating keyword, round 149/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.861919" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.861558" elapsed="0.000986"/>
</kw>
<msg time="2026-07-28T01:58:13.862601" level="INFO">Repeating keyword, round 150/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.863101" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.862750" elapsed="0.000822"/>
</kw>
<msg time="2026-07-28T01:58:13.863629" level="INFO">Repeating keyword, round 151/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.864120" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.863767" elapsed="0.001504"/>
</kw>
<msg time="2026-07-28T01:58:13.865341" level="INFO">Repeating keyword, round 152/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.865979" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.865581" elapsed="0.001981"/>
</kw>
<msg time="2026-07-28T01:58:13.867622" level="INFO">Repeating keyword, round 153/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.868175" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.867765" elapsed="0.000972"/>
</kw>
<msg time="2026-07-28T01:58:13.868796" level="INFO">Repeating keyword, round 154/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.869356" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.868997" elapsed="0.001855"/>
</kw>
<msg time="2026-07-28T01:58:13.870912" level="INFO">Repeating keyword, round 155/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.871501" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.871051" elapsed="0.001252"/>
</kw>
<msg time="2026-07-28T01:58:13.872360" level="INFO">Repeating keyword, round 156/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.872879" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.872526" elapsed="0.001705"/>
</kw>
<msg time="2026-07-28T01:58:13.874302" level="INFO">Repeating keyword, round 157/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.874910" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.874486" elapsed="0.001187"/>
</kw>
<msg time="2026-07-28T01:58:13.875770" level="INFO">Repeating keyword, round 158/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.876264" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.875910" elapsed="0.001658"/>
</kw>
<msg time="2026-07-28T01:58:13.877629" level="INFO">Repeating keyword, round 159/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.878197" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.877767" elapsed="0.001412"/>
</kw>
<msg time="2026-07-28T01:58:13.879237" level="INFO">Repeating keyword, round 160/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.879756" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.879376" elapsed="0.001418"/>
</kw>
<msg time="2026-07-28T01:58:13.880853" level="INFO">Repeating keyword, round 161/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.881426" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.880991" elapsed="0.001108"/>
</kw>
<msg time="2026-07-28T01:58:13.882159" level="INFO">Repeating keyword, round 162/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.882708" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.882297" elapsed="0.001686"/>
</kw>
<msg time="2026-07-28T01:58:13.884041" level="INFO">Repeating keyword, round 163/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.884594" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.884177" elapsed="0.000982"/>
</kw>
<msg time="2026-07-28T01:58:13.885214" level="INFO">Repeating keyword, round 164/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.885700" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.885349" elapsed="0.001207"/>
</kw>
<msg time="2026-07-28T01:58:13.886613" level="INFO">Repeating keyword, round 165/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.887088" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.886749" elapsed="0.001131"/>
</kw>
<msg time="2026-07-28T01:58:13.887940" level="INFO">Repeating keyword, round 166/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.888589" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.888163" elapsed="0.001817"/>
</kw>
<msg time="2026-07-28T01:58:13.890041" level="INFO">Repeating keyword, round 167/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.890599" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.890229" elapsed="0.000917"/>
</kw>
<msg time="2026-07-28T01:58:13.891204" level="INFO">Repeating keyword, round 168/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.891695" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.891338" elapsed="0.001217"/>
</kw>
<msg time="2026-07-28T01:58:13.892613" level="INFO">Repeating keyword, round 169/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.893088" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.892749" elapsed="0.001057"/>
</kw>
<msg time="2026-07-28T01:58:13.893865" level="INFO">Repeating keyword, round 170/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.894670" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.894181" elapsed="0.001376"/>
</kw>
<msg time="2026-07-28T01:58:13.895615" level="INFO">Repeating keyword, round 171/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.896092" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.895754" elapsed="0.001867"/>
</kw>
<msg time="2026-07-28T01:58:13.897680" level="INFO">Repeating keyword, round 172/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.898233" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.897821" elapsed="0.001744"/>
</kw>
<msg time="2026-07-28T01:58:13.899625" level="INFO">Repeating keyword, round 173/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.900105" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.899765" elapsed="0.000898"/>
</kw>
<msg time="2026-07-28T01:58:13.900724" level="INFO">Repeating keyword, round 174/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.901258" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.900917" elapsed="0.001643"/>
</kw>
<msg time="2026-07-28T01:58:13.902619" level="INFO">Repeating keyword, round 175/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.903092" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.902757" elapsed="0.001798"/>
</kw>
<msg time="2026-07-28T01:58:13.904614" level="INFO">Repeating keyword, round 176/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.905152" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.904750" elapsed="0.000976"/>
</kw>
<msg time="2026-07-28T01:58:13.905783" level="INFO">Repeating keyword, round 177/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.906420" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.905941" elapsed="0.001497"/>
</kw>
<msg time="2026-07-28T01:58:13.907530" level="INFO">Repeating keyword, round 178/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.908004" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.907668" elapsed="0.001041"/>
</kw>
<msg time="2026-07-28T01:58:13.908767" level="INFO">Repeating keyword, round 179/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.909323" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.908901" elapsed="0.001658"/>
</kw>
<msg time="2026-07-28T01:58:13.910618" level="INFO">Repeating keyword, round 180/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.911090" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.910754" elapsed="0.001630"/>
</kw>
<msg time="2026-07-28T01:58:13.912443" level="INFO">Repeating keyword, round 181/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.912997" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.912608" elapsed="0.000983"/>
</kw>
<msg time="2026-07-28T01:58:13.913691" level="INFO">Repeating keyword, round 182/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.914185" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.913829" elapsed="0.001708"/>
</kw>
<msg time="2026-07-28T01:58:13.915594" level="INFO">Repeating keyword, round 183/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.916115" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.915758" elapsed="0.000957"/>
</kw>
<msg time="2026-07-28T01:58:13.916772" level="INFO">Repeating keyword, round 184/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.917283" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.916906" elapsed="0.001711"/>
</kw>
<msg time="2026-07-28T01:58:13.918675" level="INFO">Repeating keyword, round 185/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.919194" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.918810" elapsed="0.000975"/>
</kw>
<msg time="2026-07-28T01:58:13.919841" level="INFO">Repeating keyword, round 186/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.920305" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.919974" elapsed="0.001601"/>
</kw>
<msg time="2026-07-28T01:58:13.921633" level="INFO">Repeating keyword, round 187/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.922169" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.921766" elapsed="0.001779"/>
</kw>
<msg time="2026-07-28T01:58:13.923666" level="INFO">Repeating keyword, round 188/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.924193" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.923803" elapsed="0.001001"/>
</kw>
<msg time="2026-07-28T01:58:13.924863" level="INFO">Repeating keyword, round 189/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.925333" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.924998" elapsed="0.001498"/>
</kw>
<msg time="2026-07-28T01:58:13.926554" level="INFO">Repeating keyword, round 190/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.927028" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.926690" elapsed="0.001703"/>
</kw>
<msg time="2026-07-28T01:58:13.928468" level="INFO">Repeating keyword, round 191/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.929008" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.928650" elapsed="0.001082"/>
</kw>
<msg time="2026-07-28T01:58:13.929791" level="INFO">Repeating keyword, round 192/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.930277" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.929944" elapsed="0.001612"/>
</kw>
<msg time="2026-07-28T01:58:13.931615" level="INFO">Repeating keyword, round 193/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.932258" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.931749" elapsed="0.001817"/>
</kw>
<msg time="2026-07-28T01:58:13.933625" level="INFO">Repeating keyword, round 194/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.934115" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.933763" elapsed="0.000924"/>
</kw>
<msg time="2026-07-28T01:58:13.934746" level="INFO">Repeating keyword, round 195/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.935266" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.934929" elapsed="0.001586"/>
</kw>
<msg time="2026-07-28T01:58:13.936573" level="INFO">Repeating keyword, round 196/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.937044" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.936711" elapsed="0.001626"/>
</kw>
<msg time="2026-07-28T01:58:13.938395" level="INFO">Repeating keyword, round 197/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.938948" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.938560" elapsed="0.000974"/>
</kw>
<msg time="2026-07-28T01:58:13.939591" level="INFO">Repeating keyword, round 198/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.940057" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.939726" elapsed="0.000871"/>
</kw>
<msg time="2026-07-28T01:58:13.940655" level="INFO">Repeating keyword, round 199/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.941120" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.940790" elapsed="0.001357"/>
</kw>
<msg time="2026-07-28T01:58:13.942205" level="INFO">Repeating keyword, round 200/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.942838" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.942476" elapsed="0.001710"/>
</kw>
<msg time="2026-07-28T01:58:13.944244" level="INFO">Repeating keyword, round 201/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.944790" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.944379" elapsed="0.000999"/>
</kw>
<msg time="2026-07-28T01:58:13.945435" level="INFO">Repeating keyword, round 202/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.945951" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.945601" elapsed="0.001645"/>
</kw>
<msg time="2026-07-28T01:58:13.947303" level="INFO">Repeating keyword, round 203/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.947891" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.947438" elapsed="0.001980"/>
</kw>
<msg time="2026-07-28T01:58:13.949494" level="INFO">Repeating keyword, round 204/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.950036" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.949629" elapsed="0.000986"/>
</kw>
<msg time="2026-07-28T01:58:13.950671" level="INFO">Repeating keyword, round 205/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.951134" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.950805" elapsed="0.001728"/>
</kw>
<msg time="2026-07-28T01:58:13.952591" level="INFO">Repeating keyword, round 206/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.953168" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.952826" elapsed="0.001745"/>
</kw>
<msg time="2026-07-28T01:58:13.954630" level="INFO">Repeating keyword, round 207/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.955153" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.954766" elapsed="0.001018"/>
</kw>
<msg time="2026-07-28T01:58:13.955843" level="INFO">Repeating keyword, round 208/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.956314" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.955978" elapsed="0.001839"/>
</kw>
<msg time="2026-07-28T01:58:13.957875" level="INFO">Repeating keyword, round 209/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.958422" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.958030" elapsed="0.001907"/>
</kw>
<msg time="2026-07-28T01:58:13.959996" level="INFO">Repeating keyword, round 210/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.960544" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.960131" elapsed="0.000992"/>
</kw>
<msg time="2026-07-28T01:58:13.961179" level="INFO">Repeating keyword, round 211/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.961669" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.961316" elapsed="0.001646"/>
</kw>
<msg time="2026-07-28T01:58:13.963021" level="INFO">Repeating keyword, round 212/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.963579" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.963158" elapsed="0.000965"/>
</kw>
<msg time="2026-07-28T01:58:13.964179" level="INFO">Repeating keyword, round 213/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.964669" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.964315" elapsed="0.001375"/>
</kw>
<msg time="2026-07-28T01:58:13.965833" level="INFO">Repeating keyword, round 214/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.966920" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.966126" elapsed="0.001444"/>
</kw>
<msg time="2026-07-28T01:58:13.967704" level="INFO">Repeating keyword, round 215/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.968557" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.967910" elapsed="0.001208"/>
</kw>
<msg time="2026-07-28T01:58:13.969202" level="INFO">Repeating keyword, round 216/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.970261" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.969404" elapsed="0.001474"/>
</kw>
<msg time="2026-07-28T01:58:13.970961" level="INFO">Repeating keyword, round 217/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.971815" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.971214" elapsed="0.001417"/>
</kw>
<msg time="2026-07-28T01:58:13.972714" level="INFO">Repeating keyword, round 218/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.973493" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.972904" elapsed="0.001654"/>
</kw>
<msg time="2026-07-28T01:58:13.974618" level="INFO">Repeating keyword, round 219/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.975141" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.974798" elapsed="0.001063"/>
</kw>
<msg time="2026-07-28T01:58:13.975919" level="INFO">Repeating keyword, round 220/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.976572" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.976122" elapsed="0.001926"/>
</kw>
<msg time="2026-07-28T01:58:13.978108" level="INFO">Repeating keyword, round 221/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.978690" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.978314" elapsed="0.000993"/>
</kw>
<msg time="2026-07-28T01:58:13.979365" level="INFO">Repeating keyword, round 222/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.979900" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.979522" elapsed="0.002039"/>
</kw>
<msg time="2026-07-28T01:58:13.981622" level="INFO">Repeating keyword, round 223/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.982306" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.981817" elapsed="0.002030"/>
</kw>
<msg time="2026-07-28T01:58:13.983908" level="INFO">Repeating keyword, round 224/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.984496" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.984049" elapsed="0.001961"/>
</kw>
<msg time="2026-07-28T01:58:13.986108" level="INFO">Repeating keyword, round 225/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.986663" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.986250" elapsed="0.000991"/>
</kw>
<msg time="2026-07-28T01:58:13.987338" level="INFO">Repeating keyword, round 226/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.987894" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.987550" elapsed="0.001787"/>
</kw>
<msg time="2026-07-28T01:58:13.989397" level="INFO">Repeating keyword, round 227/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.990075" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.989663" elapsed="0.000973"/>
</kw>
<msg time="2026-07-28T01:58:13.990695" level="INFO">Repeating keyword, round 228/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.991212" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.990832" elapsed="0.001807"/>
</kw>
<msg time="2026-07-28T01:58:13.992699" level="INFO">Repeating keyword, round 229/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.993301" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.992878" elapsed="0.001019"/>
</kw>
<msg time="2026-07-28T01:58:13.993993" level="INFO">Repeating keyword, round 230/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.994598" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.994131" elapsed="0.001874"/>
</kw>
<msg time="2026-07-28T01:58:13.996099" level="INFO">Repeating keyword, round 231/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.996690" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.996238" elapsed="0.002041"/>
</kw>
<msg time="2026-07-28T01:58:13.998337" level="INFO">Repeating keyword, round 232/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:13.998944" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.998560" elapsed="0.000986"/>
</kw>
<msg time="2026-07-28T01:58:13.999644" level="INFO">Repeating keyword, round 233/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.000157" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:13.999781" elapsed="0.001790"/>
</kw>
<msg time="2026-07-28T01:58:14.001667" level="INFO">Repeating keyword, round 234/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.002249" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.001807" elapsed="0.001775"/>
</kw>
<msg time="2026-07-28T01:58:14.003639" level="INFO">Repeating keyword, round 235/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.004155" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.003776" elapsed="0.000953"/>
</kw>
<msg time="2026-07-28T01:58:14.004786" level="INFO">Repeating keyword, round 236/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.005378" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.004920" elapsed="0.001135"/>
</kw>
<msg time="2026-07-28T01:58:14.006113" level="INFO">Repeating keyword, round 237/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.006653" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.006249" elapsed="0.001835"/>
</kw>
<msg time="2026-07-28T01:58:14.008142" level="INFO">Repeating keyword, round 238/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.008758" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.008342" elapsed="0.001007"/>
</kw>
<msg time="2026-07-28T01:58:14.009407" level="INFO">Repeating keyword, round 239/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.010119" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.009572" elapsed="0.001984"/>
</kw>
<msg time="2026-07-28T01:58:14.011655" level="INFO">Repeating keyword, round 240/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.012138" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.011795" elapsed="0.001625"/>
</kw>
<msg time="2026-07-28T01:58:14.013558" level="INFO">Repeating keyword, round 241/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.014094" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.013732" elapsed="0.000939"/>
</kw>
<msg time="2026-07-28T01:58:14.014729" level="INFO">Repeating keyword, round 242/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.015202" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.014865" elapsed="0.001643"/>
</kw>
<msg time="2026-07-28T01:58:14.016567" level="INFO">Repeating keyword, round 243/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.017125" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.016788" elapsed="0.000949"/>
</kw>
<msg time="2026-07-28T01:58:14.017794" level="INFO">Repeating keyword, round 244/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.018282" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.017943" elapsed="0.001626"/>
</kw>
<msg time="2026-07-28T01:58:14.019630" level="INFO">Repeating keyword, round 245/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.020145" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.019768" elapsed="0.001801"/>
</kw>
<msg time="2026-07-28T01:58:14.021629" level="INFO">Repeating keyword, round 246/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.022158" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.021766" elapsed="0.000968"/>
</kw>
<msg time="2026-07-28T01:58:14.022858" level="INFO">Repeating keyword, round 247/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.023343" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.023007" elapsed="0.001873"/>
</kw>
<msg time="2026-07-28T01:58:14.024940" level="INFO">Repeating keyword, round 248/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.025487" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.025076" elapsed="0.001076"/>
</kw>
<msg time="2026-07-28T01:58:14.026210" level="INFO">Repeating keyword, round 249/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.026741" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.026346" elapsed="0.001215"/>
</kw>
<msg time="2026-07-28T01:58:14.027656" level="INFO">Repeating keyword, round 250/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.028172" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.027797" elapsed="0.001777"/>
</kw>
<msg time="2026-07-28T01:58:14.029632" level="INFO">Repeating keyword, round 251/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.030228" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.029768" elapsed="0.001095"/>
</kw>
<msg time="2026-07-28T01:58:14.030922" level="INFO">Repeating keyword, round 252/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.031434" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.031057" elapsed="0.001841"/>
</kw>
<msg time="2026-07-28T01:58:14.032958" level="INFO">Repeating keyword, round 253/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.033584" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.033175" elapsed="0.001872"/>
</kw>
<msg time="2026-07-28T01:58:14.035105" level="INFO">Repeating keyword, round 254/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.035723" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.035286" elapsed="0.001062"/>
</kw>
<msg time="2026-07-28T01:58:14.036439" level="INFO">Repeating keyword, round 255/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.036995" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.036622" elapsed="0.001843"/>
</kw>
<msg time="2026-07-28T01:58:14.038565" level="INFO">Repeating keyword, round 256/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.039121" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.038738" elapsed="0.001016"/>
</kw>
<msg time="2026-07-28T01:58:14.039813" level="INFO">Repeating keyword, round 257/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.040330" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.039949" elapsed="0.001868"/>
</kw>
<msg time="2026-07-28T01:58:14.041917" level="INFO">Repeating keyword, round 258/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.042511" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.042131" elapsed="0.000996"/>
</kw>
<msg time="2026-07-28T01:58:14.043240" level="INFO">Repeating keyword, round 259/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.043799" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.043424" elapsed="0.001790"/>
</kw>
<msg time="2026-07-28T01:58:14.045273" level="INFO">Repeating keyword, round 260/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.045883" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.045412" elapsed="0.001119"/>
</kw>
<msg time="2026-07-28T01:58:14.046590" level="INFO">Repeating keyword, round 261/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.047107" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.046728" elapsed="0.001812"/>
</kw>
<msg time="2026-07-28T01:58:14.048599" level="INFO">Repeating keyword, round 262/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.049318" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.048736" elapsed="0.001225"/>
</kw>
<msg time="2026-07-28T01:58:14.050020" level="INFO">Repeating keyword, round 263/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.050557" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.050154" elapsed="0.001829"/>
</kw>
<msg time="2026-07-28T01:58:14.052043" level="INFO">Repeating keyword, round 264/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.052615" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.052179" elapsed="0.001997"/>
</kw>
<msg time="2026-07-28T01:58:14.054236" level="INFO">Repeating keyword, round 265/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.054804" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.054371" elapsed="0.000986"/>
</kw>
<msg time="2026-07-28T01:58:14.055414" level="INFO">Repeating keyword, round 266/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.055994" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.055619" elapsed="0.001755"/>
</kw>
<msg time="2026-07-28T01:58:14.057432" level="INFO">Repeating keyword, round 267/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.058068" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.057670" elapsed="0.001130"/>
</kw>
<msg time="2026-07-28T01:58:14.058858" level="INFO">Repeating keyword, round 268/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.059365" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.058993" elapsed="0.001813"/>
</kw>
<msg time="2026-07-28T01:58:14.060863" level="INFO">Repeating keyword, round 269/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.061414" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.061028" elapsed="0.002032"/>
</kw>
<msg time="2026-07-28T01:58:14.063118" level="INFO">Repeating keyword, round 270/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.063707" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.063289" elapsed="0.001949"/>
</kw>
<msg time="2026-07-28T01:58:14.065297" level="INFO">Repeating keyword, round 271/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.066230" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.065505" elapsed="0.001439"/>
</kw>
<msg time="2026-07-28T01:58:14.067052" level="INFO">Repeating keyword, round 272/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.067615" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.067206" elapsed="0.001809"/>
</kw>
<msg time="2026-07-28T01:58:14.069110" level="INFO">Repeating keyword, round 273/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.069687" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.069249" elapsed="0.001062"/>
</kw>
<msg time="2026-07-28T01:58:14.070368" level="INFO">Repeating keyword, round 274/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.070916" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.070537" elapsed="0.001833"/>
</kw>
<msg time="2026-07-28T01:58:14.072508" level="INFO">Repeating keyword, round 275/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.073085" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.072695" elapsed="0.001238"/>
</kw>
<msg time="2026-07-28T01:58:14.073991" level="INFO">Repeating keyword, round 276/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.074538" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.074130" elapsed="0.001440"/>
</kw>
<msg time="2026-07-28T01:58:14.075629" level="INFO">Repeating keyword, round 277/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.076152" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.075768" elapsed="0.001211"/>
</kw>
<msg time="2026-07-28T01:58:14.077076" level="INFO">Repeating keyword, round 278/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.077685" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.077213" elapsed="0.002023"/>
</kw>
<msg time="2026-07-28T01:58:14.079295" level="INFO">Repeating keyword, round 279/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.079919" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.079527" elapsed="0.001035"/>
</kw>
<msg time="2026-07-28T01:58:14.080620" level="INFO">Repeating keyword, round 280/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.081165" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.080793" elapsed="0.001768"/>
</kw>
<msg time="2026-07-28T01:58:14.082657" level="INFO">Repeating keyword, round 281/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.083171" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.082796" elapsed="0.000995"/>
</kw>
<msg time="2026-07-28T01:58:14.083848" level="INFO">Repeating keyword, round 282/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.084360" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.083983" elapsed="0.001865"/>
</kw>
<msg time="2026-07-28T01:58:14.085909" level="INFO">Repeating keyword, round 283/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.086539" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.086119" elapsed="0.001048"/>
</kw>
<msg time="2026-07-28T01:58:14.087262" level="INFO">Repeating keyword, round 284/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.087791" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.087398" elapsed="0.001160"/>
</kw>
<msg time="2026-07-28T01:58:14.088617" level="INFO">Repeating keyword, round 285/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.089290" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.088790" elapsed="0.001809"/>
</kw>
<msg time="2026-07-28T01:58:14.090662" level="INFO">Repeating keyword, round 286/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.091174" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.090800" elapsed="0.000991"/>
</kw>
<msg time="2026-07-28T01:58:14.091888" level="INFO">Repeating keyword, round 287/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.092543" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.092063" elapsed="0.002002"/>
</kw>
<msg time="2026-07-28T01:58:14.094124" level="INFO">Repeating keyword, round 288/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.094776" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.094362" elapsed="0.001077"/>
</kw>
<msg time="2026-07-28T01:58:14.095512" level="INFO">Repeating keyword, round 289/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.096022" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.095650" elapsed="0.002072"/>
</kw>
<msg time="2026-07-28T01:58:14.097789" level="INFO">Repeating keyword, round 290/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.098476" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.098032" elapsed="0.001191"/>
</kw>
<msg time="2026-07-28T01:58:14.099281" level="INFO">Repeating keyword, round 291/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.099852" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.099418" elapsed="0.001174"/>
</kw>
<msg time="2026-07-28T01:58:14.100650" level="INFO">Repeating keyword, round 292/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.101196" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.100787" elapsed="0.001811"/>
</kw>
<msg time="2026-07-28T01:58:14.102656" level="INFO">Repeating keyword, round 293/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.103167" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.102793" elapsed="0.001806"/>
</kw>
<msg time="2026-07-28T01:58:14.104663" level="INFO">Repeating keyword, round 294/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.105279" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.104905" elapsed="0.002508"/>
</kw>
<msg time="2026-07-28T01:58:14.107490" level="INFO">Repeating keyword, round 295/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.108087" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.107705" elapsed="0.001036"/>
</kw>
<msg time="2026-07-28T01:58:14.108799" level="INFO">Repeating keyword, round 296/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.109346" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.108971" elapsed="0.001843"/>
</kw>
<msg time="2026-07-28T01:58:14.110913" level="INFO">Repeating keyword, round 297/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.111507" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.111085" elapsed="0.001066"/>
</kw>
<msg time="2026-07-28T01:58:14.112210" level="INFO">Repeating keyword, round 298/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.112792" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.112381" elapsed="0.001882"/>
</kw>
<msg time="2026-07-28T01:58:14.114323" level="INFO">Repeating keyword, round 299/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.114948" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.114526" elapsed="0.001085"/>
</kw>
<msg time="2026-07-28T01:58:14.115670" level="INFO">Repeating keyword, round 300/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.116224" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.115849" elapsed="0.001846"/>
</kw>
<msg time="2026-07-28T01:58:14.117753" level="INFO">Repeating keyword, round 301/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.118385" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.118005" elapsed="0.001028"/>
</kw>
<msg time="2026-07-28T01:58:14.119089" level="INFO">Repeating keyword, round 302/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.119651" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.119224" elapsed="0.001338"/>
</kw>
<msg time="2026-07-28T01:58:14.120619" level="INFO">Repeating keyword, round 303/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.121132" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.120754" elapsed="0.001908"/>
</kw>
<msg time="2026-07-28T01:58:14.122722" level="INFO">Repeating keyword, round 304/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.123323" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.122859" elapsed="0.002071"/>
</kw>
<msg time="2026-07-28T01:58:14.124989" level="INFO">Repeating keyword, round 305/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.125601" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.125155" elapsed="0.001112"/>
</kw>
<msg time="2026-07-28T01:58:14.126324" level="INFO">Repeating keyword, round 306/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.126903" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.126488" elapsed="0.001219"/>
</kw>
<msg time="2026-07-28T01:58:14.127764" level="INFO">Repeating keyword, round 307/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.128318" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.127940" elapsed="0.001846"/>
</kw>
<msg time="2026-07-28T01:58:14.129876" level="INFO">Repeating keyword, round 308/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.130666" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.130054" elapsed="0.002102"/>
</kw>
<msg time="2026-07-28T01:58:14.132214" level="INFO">Repeating keyword, round 309/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.132836" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.132431" elapsed="0.001101"/>
</kw>
<msg time="2026-07-28T01:58:14.133591" level="INFO">Repeating keyword, round 310/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.134166" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.133727" elapsed="0.001990"/>
</kw>
<msg time="2026-07-28T01:58:14.135775" level="INFO">Repeating keyword, round 311/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.136367" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.135983" elapsed="0.001008"/>
</kw>
<msg time="2026-07-28T01:58:14.137184" level="INFO">Repeating keyword, round 312/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.137759" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.137322" elapsed="0.001962"/>
</kw>
<msg time="2026-07-28T01:58:14.139345" level="INFO">Repeating keyword, round 313/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.139933" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.139544" elapsed="0.001030"/>
</kw>
<msg time="2026-07-28T01:58:14.140633" level="INFO">Repeating keyword, round 314/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.141188" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.140809" elapsed="0.001856"/>
</kw>
<msg time="2026-07-28T01:58:14.142761" level="INFO">Repeating keyword, round 315/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.143354" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.142927" elapsed="0.001056"/>
</kw>
<msg time="2026-07-28T01:58:14.144076" level="INFO">Repeating keyword, round 316/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.144616" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.144211" elapsed="0.001924"/>
</kw>
<msg time="2026-07-28T01:58:14.146194" level="INFO">Repeating keyword, round 317/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.146851" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.146390" elapsed="0.001116"/>
</kw>
<msg time="2026-07-28T01:58:14.147564" level="INFO">Repeating keyword, round 318/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.148109" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.147736" elapsed="0.001859"/>
</kw>
<msg time="2026-07-28T01:58:14.149658" level="INFO">Repeating keyword, round 319/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.150328" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.149938" elapsed="0.002333"/>
</kw>
<msg time="2026-07-28T01:58:14.152399" level="INFO">Repeating keyword, round 320/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.153212" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.152658" elapsed="0.001519"/>
</kw>
<msg time="2026-07-28T01:58:14.154249" level="INFO">Repeating keyword, round 321/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.154993" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.154436" elapsed="0.002513"/>
</kw>
<msg time="2026-07-28T01:58:14.157026" level="INFO">Repeating keyword, round 322/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.157871" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.157306" elapsed="0.001438"/>
</kw>
<msg time="2026-07-28T01:58:14.158804" level="INFO">Repeating keyword, round 323/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.159327" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.158947" elapsed="0.001843"/>
</kw>
<msg time="2026-07-28T01:58:14.160852" level="INFO">Repeating keyword, round 324/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.161509" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.161018" elapsed="0.002049"/>
</kw>
<msg time="2026-07-28T01:58:14.163125" level="INFO">Repeating keyword, round 325/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.163735" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.163337" elapsed="0.001980"/>
</kw>
<msg time="2026-07-28T01:58:14.165376" level="INFO">Repeating keyword, round 326/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.166024" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.165570" elapsed="0.001100"/>
</kw>
<msg time="2026-07-28T01:58:14.166727" level="INFO">Repeating keyword, round 327/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.167270" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.166899" elapsed="0.001664"/>
</kw>
<msg time="2026-07-28T01:58:14.168625" level="INFO">Repeating keyword, round 328/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.169173" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.168802" elapsed="0.001029"/>
</kw>
<msg time="2026-07-28T01:58:14.169925" level="INFO">Repeating keyword, round 329/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.170524" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.170129" elapsed="0.002005"/>
</kw>
<msg time="2026-07-28T01:58:14.172193" level="INFO">Repeating keyword, round 330/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.172819" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.172400" elapsed="0.001069"/>
</kw>
<msg time="2026-07-28T01:58:14.173529" level="INFO">Repeating keyword, round 331/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.174240" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.173699" elapsed="0.002003"/>
</kw>
<msg time="2026-07-28T01:58:14.175761" level="INFO">Repeating keyword, round 332/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.176326" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.175899" elapsed="0.001059"/>
</kw>
<msg time="2026-07-28T01:58:14.177016" level="INFO">Repeating keyword, round 333/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.177582" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.177189" elapsed="0.001897"/>
</kw>
<msg time="2026-07-28T01:58:14.179145" level="INFO">Repeating keyword, round 334/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.179754" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.179349" elapsed="0.000994"/>
</kw>
<msg time="2026-07-28T01:58:14.180440" level="INFO">Repeating keyword, round 335/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.180970" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.180596" elapsed="0.001831"/>
</kw>
<msg time="2026-07-28T01:58:14.182523" level="INFO">Repeating keyword, round 336/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.183077" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.182687" elapsed="0.001064"/>
</kw>
<msg time="2026-07-28T01:58:14.183810" level="INFO">Repeating keyword, round 337/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.184328" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.183950" elapsed="0.001907"/>
</kw>
<msg time="2026-07-28T01:58:14.185916" level="INFO">Repeating keyword, round 338/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.186544" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.186054" elapsed="0.002274"/>
</kw>
<msg time="2026-07-28T01:58:14.188389" level="INFO">Repeating keyword, round 339/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.188980" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.188593" elapsed="0.001044"/>
</kw>
<msg time="2026-07-28T01:58:14.189696" level="INFO">Repeating keyword, round 340/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.190225" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.189851" elapsed="0.001846"/>
</kw>
<msg time="2026-07-28T01:58:14.191756" level="INFO">Repeating keyword, round 341/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.192320" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.191893" elapsed="0.001039"/>
</kw>
<msg time="2026-07-28T01:58:14.193027" level="INFO">Repeating keyword, round 342/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.193568" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.193162" elapsed="0.001922"/>
</kw>
<msg time="2026-07-28T01:58:14.195143" level="INFO">Repeating keyword, round 343/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.195731" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.195280" elapsed="0.002004"/>
</kw>
<msg time="2026-07-28T01:58:14.197342" level="INFO">Repeating keyword, round 344/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.197957" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.197561" elapsed="0.001031"/>
</kw>
<msg time="2026-07-28T01:58:14.198650" level="INFO">Repeating keyword, round 345/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.199158" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.198784" elapsed="0.001075"/>
</kw>
<msg time="2026-07-28T01:58:14.199916" level="INFO">Repeating keyword, round 346/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.200428" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.200051" elapsed="0.002067"/>
</kw>
<msg time="2026-07-28T01:58:14.202195" level="INFO">Repeating keyword, round 347/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.202927" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.202509" elapsed="0.001091"/>
</kw>
<msg time="2026-07-28T01:58:14.203693" level="INFO">Repeating keyword, round 348/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.204199" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.203829" elapsed="0.001809"/>
</kw>
<msg time="2026-07-28T01:58:14.205697" level="INFO">Repeating keyword, round 349/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.206268" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.205916" elapsed="0.001002"/>
</kw>
<msg time="2026-07-28T01:58:14.206978" level="INFO">Repeating keyword, round 350/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.207511" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.207112" elapsed="0.001846"/>
</kw>
<msg time="2026-07-28T01:58:14.209057" level="INFO">Repeating keyword, round 351/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.209642" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.209230" elapsed="0.001097"/>
</kw>
<msg time="2026-07-28T01:58:14.210419" level="INFO">Repeating keyword, round 352/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.210947" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.210574" elapsed="0.001780"/>
</kw>
<msg time="2026-07-28T01:58:14.212413" level="INFO">Repeating keyword, round 353/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.212994" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.212616" elapsed="0.001089"/>
</kw>
<msg time="2026-07-28T01:58:14.213781" level="INFO">Repeating keyword, round 354/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.215496" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.213957" elapsed="0.002188"/>
</kw>
<msg time="2026-07-28T01:58:14.216201" level="INFO">Repeating keyword, round 355/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.216785" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.216374" elapsed="0.001885"/>
</kw>
<msg time="2026-07-28T01:58:14.218318" level="INFO">Repeating keyword, round 356/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.218928" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.218535" elapsed="0.001451"/>
</kw>
<msg time="2026-07-28T01:58:14.220047" level="INFO">Repeating keyword, round 357/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.220587" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.220187" elapsed="0.001882"/>
</kw>
<msg time="2026-07-28T01:58:14.222168" level="INFO">Repeating keyword, round 358/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.222758" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.222344" elapsed="0.001301"/>
</kw>
<msg time="2026-07-28T01:58:14.223704" level="INFO">Repeating keyword, round 359/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.224222" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.223845" elapsed="0.001570"/>
</kw>
<msg time="2026-07-28T01:58:14.225492" level="INFO">Repeating keyword, round 360/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.226118" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.225701" elapsed="0.002074"/>
</kw>
<msg time="2026-07-28T01:58:14.227834" level="INFO">Repeating keyword, round 361/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.228389" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.228001" elapsed="0.001112"/>
</kw>
<msg time="2026-07-28T01:58:14.229170" level="INFO">Repeating keyword, round 362/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.229734" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.229307" elapsed="0.001917"/>
</kw>
<msg time="2026-07-28T01:58:14.231284" level="INFO">Repeating keyword, round 363/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.231896" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.231477" elapsed="0.001123"/>
</kw>
<msg time="2026-07-28T01:58:14.232665" level="INFO">Repeating keyword, round 364/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.233217" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.232845" elapsed="0.001937"/>
</kw>
<msg time="2026-07-28T01:58:14.234913" level="INFO">Repeating keyword, round 365/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.235538" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.235121" elapsed="0.001323"/>
</kw>
<msg time="2026-07-28T01:58:14.236521" level="INFO">Repeating keyword, round 366/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.237074" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.236659" elapsed="0.001915"/>
</kw>
<msg time="2026-07-28T01:58:14.238634" level="INFO">Repeating keyword, round 367/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.239232" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.238810" elapsed="0.001334"/>
</kw>
<msg time="2026-07-28T01:58:14.240204" level="INFO">Repeating keyword, round 368/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.240732" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.240339" elapsed="0.001927"/>
</kw>
<msg time="2026-07-28T01:58:14.242327" level="INFO">Repeating keyword, round 369/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.242954" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.242560" elapsed="0.001196"/>
</kw>
<msg time="2026-07-28T01:58:14.243815" level="INFO">Repeating keyword, round 370/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.244367" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.243991" elapsed="0.001722"/>
</kw>
<msg time="2026-07-28T01:58:14.245844" level="INFO">Repeating keyword, round 371/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.246441" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.246054" elapsed="0.001994"/>
</kw>
<msg time="2026-07-28T01:58:14.248108" level="INFO">Repeating keyword, round 372/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.248736" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.248315" elapsed="0.001656"/>
</kw>
<msg time="2026-07-28T01:58:14.250029" level="INFO">Repeating keyword, round 373/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.250573" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.250166" elapsed="0.001829"/>
</kw>
<msg time="2026-07-28T01:58:14.252053" level="INFO">Repeating keyword, round 374/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.252633" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.252189" elapsed="0.002085"/>
</kw>
<msg time="2026-07-28T01:58:14.254331" level="INFO">Repeating keyword, round 375/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.254973" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.254545" elapsed="0.001068"/>
</kw>
<msg time="2026-07-28T01:58:14.255671" level="INFO">Repeating keyword, round 376/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.256185" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.255852" elapsed="0.001812"/>
</kw>
<msg time="2026-07-28T01:58:14.257726" level="INFO">Repeating keyword, round 377/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.258570" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.257982" elapsed="0.001241"/>
</kw>
<msg time="2026-07-28T01:58:14.259312" level="INFO">Repeating keyword, round 378/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.259842" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.259449" elapsed="0.002098"/>
</kw>
<msg time="2026-07-28T01:58:14.261607" level="INFO">Repeating keyword, round 379/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.262284" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.261802" elapsed="0.001226"/>
</kw>
<msg time="2026-07-28T01:58:14.263086" level="INFO">Repeating keyword, round 380/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.263657" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.263222" elapsed="0.001891"/>
</kw>
<msg time="2026-07-28T01:58:14.265172" level="INFO">Repeating keyword, round 381/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.265830" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.265376" elapsed="0.001122"/>
</kw>
<msg time="2026-07-28T01:58:14.266563" level="INFO">Repeating keyword, round 382/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.267076" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.266701" elapsed="0.001845"/>
</kw>
<msg time="2026-07-28T01:58:14.268662" level="INFO">Repeating keyword, round 383/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.269252" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.268866" elapsed="0.001068"/>
</kw>
<msg time="2026-07-28T01:58:14.270028" level="INFO">Repeating keyword, round 384/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.270570" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.270167" elapsed="0.001890"/>
</kw>
<msg time="2026-07-28T01:58:14.272117" level="INFO">Repeating keyword, round 385/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.272832" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.272254" elapsed="0.002525"/>
</kw>
<msg time="2026-07-28T01:58:14.274848" level="INFO">Repeating keyword, round 386/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.275438" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.275052" elapsed="0.002053"/>
</kw>
<msg time="2026-07-28T01:58:14.277173" level="INFO">Repeating keyword, round 387/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.277853" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.277349" elapsed="0.004126"/>
</kw>
<msg time="2026-07-28T01:58:14.281760" level="INFO">Repeating keyword, round 388/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.282900" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.282155" elapsed="0.001887"/>
</kw>
<msg time="2026-07-28T01:58:14.284100" level="INFO">Repeating keyword, round 389/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.284607" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.284243" elapsed="0.002321"/>
</kw>
<msg time="2026-07-28T01:58:14.286626" level="INFO">Repeating keyword, round 390/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.287111" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.286767" elapsed="0.001303"/>
</kw>
<msg time="2026-07-28T01:58:14.288201" level="INFO">Repeating keyword, round 391/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.289210" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.288516" elapsed="0.001681"/>
</kw>
<msg time="2026-07-28T01:58:14.290292" level="INFO">Repeating keyword, round 392/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.291041" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.290566" elapsed="0.001287"/>
</kw>
<msg time="2026-07-28T01:58:14.291930" level="INFO">Repeating keyword, round 393/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.292620" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.292118" elapsed="0.002911"/>
</kw>
<msg time="2026-07-28T01:58:14.295122" level="INFO">Repeating keyword, round 394/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.295871" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.295358" elapsed="0.001449"/>
</kw>
<msg time="2026-07-28T01:58:14.296890" level="INFO">Repeating keyword, round 395/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.297576" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.297080" elapsed="0.002919"/>
</kw>
<msg time="2026-07-28T01:58:14.300080" level="INFO">Repeating keyword, round 396/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.300829" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.300270" elapsed="0.002773"/>
</kw>
<msg time="2026-07-28T01:58:14.303126" level="INFO">Repeating keyword, round 397/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.303934" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.303437" elapsed="0.001649"/>
</kw>
<msg time="2026-07-28T01:58:14.305167" level="INFO">Repeating keyword, round 398/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.305935" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.305357" elapsed="0.001893"/>
</kw>
<msg time="2026-07-28T01:58:14.307308" level="INFO">Repeating keyword, round 399/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.307863" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.307445" elapsed="0.001234"/>
</kw>
<msg time="2026-07-28T01:58:14.308736" level="INFO">Repeating keyword, round 400/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.309416" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.308873" elapsed="0.002623"/>
</kw>
<msg time="2026-07-28T01:58:14.311557" level="INFO">Repeating keyword, round 401/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.312077" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.311695" elapsed="0.001149"/>
</kw>
<msg time="2026-07-28T01:58:14.312902" level="INFO">Repeating keyword, round 402/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.313370" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.313037" elapsed="0.002066"/>
</kw>
<msg time="2026-07-28T01:58:14.315162" level="INFO">Repeating keyword, round 403/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.315747" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.315298" elapsed="0.001259"/>
</kw>
<msg time="2026-07-28T01:58:14.316615" level="INFO">Repeating keyword, round 404/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.317087" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.316751" elapsed="0.001821"/>
</kw>
<msg time="2026-07-28T01:58:14.318634" level="INFO">Repeating keyword, round 405/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.319116" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.318774" elapsed="0.001092"/>
</kw>
<msg time="2026-07-28T01:58:14.319927" level="INFO">Repeating keyword, round 406/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.320396" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.320061" elapsed="0.001822"/>
</kw>
<msg time="2026-07-28T01:58:14.321943" level="INFO">Repeating keyword, round 407/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.322417" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.322079" elapsed="0.001149"/>
</kw>
<msg time="2026-07-28T01:58:14.323329" level="INFO">Repeating keyword, round 408/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.323838" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.323499" elapsed="0.002108"/>
</kw>
<msg time="2026-07-28T01:58:14.325667" level="INFO">Repeating keyword, round 409/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.326283" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.325885" elapsed="0.001681"/>
</kw>
<msg time="2026-07-28T01:58:14.327626" level="INFO">Repeating keyword, round 410/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.328103" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.327764" elapsed="0.001122"/>
</kw>
<msg time="2026-07-28T01:58:14.328983" level="INFO">Repeating keyword, round 411/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.329481" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.329122" elapsed="0.002466"/>
</kw>
<msg time="2026-07-28T01:58:14.331647" level="INFO">Repeating keyword, round 412/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.332178" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.331829" elapsed="0.001163"/>
</kw>
<msg time="2026-07-28T01:58:14.333050" level="INFO">Repeating keyword, round 413/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.333548" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.333185" elapsed="0.002100"/>
</kw>
<msg time="2026-07-28T01:58:14.335344" level="INFO">Repeating keyword, round 414/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.335941" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.335593" elapsed="0.001134"/>
</kw>
<msg time="2026-07-28T01:58:14.336785" level="INFO">Repeating keyword, round 415/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.337256" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.336921" elapsed="0.001996"/>
</kw>
<msg time="2026-07-28T01:58:14.338976" level="INFO">Repeating keyword, round 416/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.339541" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.339114" elapsed="0.001172"/>
</kw>
<msg time="2026-07-28T01:58:14.340348" level="INFO">Repeating keyword, round 417/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.340863" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.340522" elapsed="0.002042"/>
</kw>
<msg time="2026-07-28T01:58:14.342627" level="INFO">Repeating keyword, round 418/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.343186" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.342837" elapsed="0.001210"/>
</kw>
<msg time="2026-07-28T01:58:14.344112" level="INFO">Repeating keyword, round 419/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.344634" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.344252" elapsed="0.002086"/>
</kw>
<msg time="2026-07-28T01:58:14.346405" level="INFO">Repeating keyword, round 420/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.346965" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.346580" elapsed="0.001164"/>
</kw>
<msg time="2026-07-28T01:58:14.347804" level="INFO">Repeating keyword, round 421/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.348278" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.347943" elapsed="0.002289"/>
</kw>
<msg time="2026-07-28T01:58:14.350295" level="INFO">Repeating keyword, round 422/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.350900" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.350547" elapsed="0.001170"/>
</kw>
<msg time="2026-07-28T01:58:14.351777" level="INFO">Repeating keyword, round 423/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.352393" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.351915" elapsed="0.002202"/>
</kw>
<msg time="2026-07-28T01:58:14.354179" level="INFO">Repeating keyword, round 424/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.354927" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.354316" elapsed="0.001447"/>
</kw>
<msg time="2026-07-28T01:58:14.355821" level="INFO">Repeating keyword, round 425/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.356291" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.355957" elapsed="0.002176"/>
</kw>
<msg time="2026-07-28T01:58:14.358193" level="INFO">Repeating keyword, round 426/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.358751" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.358333" elapsed="0.001605"/>
</kw>
<msg time="2026-07-28T01:58:14.359995" level="INFO">Repeating keyword, round 427/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.360482" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.360130" elapsed="0.002466"/>
</kw>
<msg time="2026-07-28T01:58:14.362673" level="INFO">Repeating keyword, round 428/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.363240" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.362882" elapsed="0.001103"/>
</kw>
<msg time="2026-07-28T01:58:14.364045" level="INFO">Repeating keyword, round 429/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.364560" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.364183" elapsed="0.001871"/>
</kw>
<msg time="2026-07-28T01:58:14.366112" level="INFO">Repeating keyword, round 430/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.366661" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.366251" elapsed="0.001476"/>
</kw>
<msg time="2026-07-28T01:58:14.367786" level="INFO">Repeating keyword, round 431/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.368274" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.367925" elapsed="0.001923"/>
</kw>
<msg time="2026-07-28T01:58:14.369911" level="INFO">Repeating keyword, round 432/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.370449" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.370047" elapsed="0.001765"/>
</kw>
<msg time="2026-07-28T01:58:14.371870" level="INFO">Repeating keyword, round 433/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.372345" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.372007" elapsed="0.001908"/>
</kw>
<msg time="2026-07-28T01:58:14.373987" level="INFO">Repeating keyword, round 434/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.374540" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.374125" elapsed="0.001067"/>
</kw>
<msg time="2026-07-28T01:58:14.375248" level="INFO">Repeating keyword, round 435/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.375787" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.375420" elapsed="0.002254"/>
</kw>
<msg time="2026-07-28T01:58:14.377858" level="INFO">Repeating keyword, round 436/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.378421" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.378057" elapsed="0.001010"/>
</kw>
<msg time="2026-07-28T01:58:14.379160" level="INFO">Repeating keyword, round 437/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.379659" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.379299" elapsed="0.001895"/>
</kw>
<msg time="2026-07-28T01:58:14.381253" level="INFO">Repeating keyword, round 438/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.381856" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.381394" elapsed="0.001259"/>
</kw>
<msg time="2026-07-28T01:58:14.382736" level="INFO">Repeating keyword, round 439/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.383395" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.382927" elapsed="0.001458"/>
</kw>
<msg time="2026-07-28T01:58:14.384512" level="INFO">Repeating keyword, round 440/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.385172" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.384704" elapsed="0.001900"/>
</kw>
<msg time="2026-07-28T01:58:14.386687" level="INFO">Repeating keyword, round 441/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.387445" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.386945" elapsed="0.001764"/>
</kw>
<msg time="2026-07-28T01:58:14.388791" level="INFO">Repeating keyword, round 442/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.389642" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.388981" elapsed="0.001672"/>
</kw>
<msg time="2026-07-28T01:58:14.390712" level="INFO">Repeating keyword, round 443/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.391201" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.390861" elapsed="0.002052"/>
</kw>
<msg time="2026-07-28T01:58:14.392982" level="INFO">Repeating keyword, round 444/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.393582" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.393136" elapsed="0.001446"/>
</kw>
<msg time="2026-07-28T01:58:14.394640" level="INFO">Repeating keyword, round 445/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.395115" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.394777" elapsed="0.001344"/>
</kw>
<msg time="2026-07-28T01:58:14.396188" level="INFO">Repeating keyword, round 446/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.396902" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.396325" elapsed="0.002242"/>
</kw>
<msg time="2026-07-28T01:58:14.398627" level="INFO">Repeating keyword, round 447/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.399103" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.398764" elapsed="0.001114"/>
</kw>
<msg time="2026-07-28T01:58:14.399942" level="INFO">Repeating keyword, round 448/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.400421" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.400080" elapsed="0.002062"/>
</kw>
<msg time="2026-07-28T01:58:14.402204" level="INFO">Repeating keyword, round 449/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.402789" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.402362" elapsed="0.001179"/>
</kw>
<msg time="2026-07-28T01:58:14.403600" level="INFO">Repeating keyword, round 450/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.404072" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.403737" elapsed="0.001844"/>
</kw>
<msg time="2026-07-28T01:58:14.405647" level="INFO">Repeating keyword, round 451/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.406202" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.405810" elapsed="0.001402"/>
</kw>
<msg time="2026-07-28T01:58:14.407281" level="INFO">Repeating keyword, round 452/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.407808" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.407419" elapsed="0.001163"/>
</kw>
<msg time="2026-07-28T01:58:14.408640" level="INFO">Repeating keyword, round 453/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.409131" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.408777" elapsed="0.001966"/>
</kw>
<msg time="2026-07-28T01:58:14.410805" level="INFO">Repeating keyword, round 454/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.411330" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.410942" elapsed="0.001790"/>
</kw>
<msg time="2026-07-28T01:58:14.412799" level="INFO">Repeating keyword, round 455/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.413314" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.412934" elapsed="0.001809"/>
</kw>
<msg time="2026-07-28T01:58:14.414802" level="INFO">Repeating keyword, round 456/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.415320" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.414938" elapsed="0.001192"/>
</kw>
<msg time="2026-07-28T01:58:14.416186" level="INFO">Repeating keyword, round 457/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.416674" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.416321" elapsed="0.001937"/>
</kw>
<msg time="2026-07-28T01:58:14.418318" level="INFO">Repeating keyword, round 458/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.418857" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.418474" elapsed="0.001145"/>
</kw>
<msg time="2026-07-28T01:58:14.419678" level="INFO">Repeating keyword, round 459/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.420147" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.419813" elapsed="0.001957"/>
</kw>
<msg time="2026-07-28T01:58:14.421831" level="INFO">Repeating keyword, round 460/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.422356" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.421968" elapsed="0.001128"/>
</kw>
<msg time="2026-07-28T01:58:14.423153" level="INFO">Repeating keyword, round 461/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.423643" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.423288" elapsed="0.001858"/>
</kw>
<msg time="2026-07-28T01:58:14.425205" level="INFO">Repeating keyword, round 462/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.425793" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.425341" elapsed="0.001235"/>
</kw>
<msg time="2026-07-28T01:58:14.426635" level="INFO">Repeating keyword, round 463/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.427107" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.426770" elapsed="0.001890"/>
</kw>
<msg time="2026-07-28T01:58:14.428720" level="INFO">Repeating keyword, round 464/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.429237" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.428855" elapsed="0.001173"/>
</kw>
<msg time="2026-07-28T01:58:14.430085" level="INFO">Repeating keyword, round 465/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.430585" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.430221" elapsed="0.002079"/>
</kw>
<msg time="2026-07-28T01:58:14.432368" level="INFO">Repeating keyword, round 466/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.432943" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.432589" elapsed="0.001160"/>
</kw>
<msg time="2026-07-28T01:58:14.433808" level="INFO">Repeating keyword, round 467/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.434278" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.433944" elapsed="0.001858"/>
</kw>
<msg time="2026-07-28T01:58:14.435861" level="INFO">Repeating keyword, round 468/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.436378" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.435998" elapsed="0.002227"/>
</kw>
<msg time="2026-07-28T01:58:14.438314" level="INFO">Repeating keyword, round 469/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.439068" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.438532" elapsed="0.001373"/>
</kw>
<msg time="2026-07-28T01:58:14.439965" level="INFO">Repeating keyword, round 470/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.440444" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.440105" elapsed="0.001467"/>
</kw>
<msg time="2026-07-28T01:58:14.441647" level="INFO">Repeating keyword, round 471/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.442206" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.441864" elapsed="0.001817"/>
</kw>
<msg time="2026-07-28T01:58:14.443741" level="INFO">Repeating keyword, round 472/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.444279" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.443879" elapsed="0.001701"/>
</kw>
<msg time="2026-07-28T01:58:14.445639" level="INFO">Repeating keyword, round 473/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.446159" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.445819" elapsed="0.001099"/>
</kw>
<msg time="2026-07-28T01:58:14.446978" level="INFO">Repeating keyword, round 474/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.447562" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.447150" elapsed="0.001934"/>
</kw>
<msg time="2026-07-28T01:58:14.449146" level="INFO">Repeating keyword, round 475/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.449729" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.449282" elapsed="0.001209"/>
</kw>
<msg time="2026-07-28T01:58:14.450550" level="INFO">Repeating keyword, round 476/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.451037" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.450685" elapsed="0.001925"/>
</kw>
<msg time="2026-07-28T01:58:14.452669" level="INFO">Repeating keyword, round 477/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.453198" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.452814" elapsed="0.002082"/>
</kw>
<msg time="2026-07-28T01:58:14.454964" level="INFO">Repeating keyword, round 478/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.455505" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.455100" elapsed="0.001152"/>
</kw>
<msg time="2026-07-28T01:58:14.456309" level="INFO">Repeating keyword, round 479/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.456814" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.456446" elapsed="0.001895"/>
</kw>
<msg time="2026-07-28T01:58:14.458407" level="INFO">Repeating keyword, round 480/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.458993" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.458582" elapsed="0.001168"/>
</kw>
<msg time="2026-07-28T01:58:14.459809" level="INFO">Repeating keyword, round 481/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.460280" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.459946" elapsed="0.001883"/>
</kw>
<msg time="2026-07-28T01:58:14.461889" level="INFO">Repeating keyword, round 482/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.462420" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.462026" elapsed="0.002070"/>
</kw>
<msg time="2026-07-28T01:58:14.464155" level="INFO">Repeating keyword, round 483/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.464697" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.464296" elapsed="0.001219"/>
</kw>
<msg time="2026-07-28T01:58:14.465573" level="INFO">Repeating keyword, round 484/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.466078" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.465738" elapsed="0.002081"/>
</kw>
<msg time="2026-07-28T01:58:14.467881" level="INFO">Repeating keyword, round 485/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.468417" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.468021" elapsed="0.001166"/>
</kw>
<msg time="2026-07-28T01:58:14.469243" level="INFO">Repeating keyword, round 486/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.469780" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.469384" elapsed="0.001908"/>
</kw>
<msg time="2026-07-28T01:58:14.471355" level="INFO">Repeating keyword, round 487/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.472124" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.471773" elapsed="0.001139"/>
</kw>
<msg time="2026-07-28T01:58:14.472970" level="INFO">Repeating keyword, round 488/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.473441" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.473105" elapsed="0.001881"/>
</kw>
<msg time="2026-07-28T01:58:14.475110" level="INFO">Repeating keyword, round 489/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.475683" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.475288" elapsed="0.001132"/>
</kw>
<msg time="2026-07-28T01:58:14.476500" level="INFO">Repeating keyword, round 490/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.476976" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.476638" elapsed="0.001889"/>
</kw>
<msg time="2026-07-28T01:58:14.478587" level="INFO">Repeating keyword, round 491/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.479136" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.478753" elapsed="0.001144"/>
</kw>
<msg time="2026-07-28T01:58:14.479955" level="INFO">Repeating keyword, round 492/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.480614" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.480098" elapsed="0.002051"/>
</kw>
<msg time="2026-07-28T01:58:14.482210" level="INFO">Repeating keyword, round 493/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.482764" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.482345" elapsed="0.001190"/>
</kw>
<msg time="2026-07-28T01:58:14.483595" level="INFO">Repeating keyword, round 494/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.484062" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.483729" elapsed="0.001860"/>
</kw>
<msg time="2026-07-28T01:58:14.485675" level="INFO">Repeating keyword, round 495/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.486227" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.485860" elapsed="0.001143"/>
</kw>
<msg time="2026-07-28T01:58:14.487063" level="INFO">Repeating keyword, round 496/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.487551" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.487197" elapsed="0.001852"/>
</kw>
<msg time="2026-07-28T01:58:14.489108" level="INFO">Repeating keyword, round 497/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.489706" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.489276" elapsed="0.001203"/>
</kw>
<msg time="2026-07-28T01:58:14.490538" level="INFO">Repeating keyword, round 498/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.491007" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.490675" elapsed="0.002068"/>
</kw>
<msg time="2026-07-28T01:58:14.492803" level="INFO">Repeating keyword, round 499/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.493339" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.492984" elapsed="0.001192"/>
</kw>
<msg time="2026-07-28T01:58:14.494236" level="INFO">Repeating keyword, round 500/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.494737" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.494373" elapsed="0.001850"/>
</kw>
<msg time="2026-07-28T01:58:14.496285" level="INFO">Repeating keyword, round 501/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.496858" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.496422" elapsed="0.001556"/>
</kw>
<msg time="2026-07-28T01:58:14.498038" level="INFO">Repeating keyword, round 502/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.498549" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.498177" elapsed="0.001849"/>
</kw>
<msg time="2026-07-28T01:58:14.500086" level="INFO">Repeating keyword, round 503/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.500665" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.500238" elapsed="0.001293"/>
</kw>
<msg time="2026-07-28T01:58:14.501587" level="INFO">Repeating keyword, round 504/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.502079" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.501745" elapsed="0.001834"/>
</kw>
<msg time="2026-07-28T01:58:14.503641" level="INFO">Repeating keyword, round 505/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.504170" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.503777" elapsed="0.001178"/>
</kw>
<msg time="2026-07-28T01:58:14.505011" level="INFO">Repeating keyword, round 506/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.505499" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.505145" elapsed="0.002094"/>
</kw>
<msg time="2026-07-28T01:58:14.507357" level="INFO">Repeating keyword, round 507/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.507857" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.507514" elapsed="0.001635"/>
</kw>
<msg time="2026-07-28T01:58:14.509348" level="INFO">Repeating keyword, round 508/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.510799" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.509854" elapsed="0.003290"/>
</kw>
<msg time="2026-07-28T01:58:14.513239" level="INFO">Repeating keyword, round 509/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.514101" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.513527" elapsed="0.001457"/>
</kw>
<msg time="2026-07-28T01:58:14.515069" level="INFO">Repeating keyword, round 510/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.515799" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.515268" elapsed="0.001453"/>
</kw>
<msg time="2026-07-28T01:58:14.516804" level="INFO">Repeating keyword, round 511/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.517529" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.517017" elapsed="0.001404"/>
</kw>
<msg time="2026-07-28T01:58:14.518552" level="INFO">Repeating keyword, round 512/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.519265" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.518761" elapsed="0.002719"/>
</kw>
<msg time="2026-07-28T01:58:14.521568" level="INFO">Repeating keyword, round 513/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.522352" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.521832" elapsed="0.001472"/>
</kw>
<msg time="2026-07-28T01:58:14.523400" level="INFO">Repeating keyword, round 514/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.523926" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.523571" elapsed="0.001936"/>
</kw>
<msg time="2026-07-28T01:58:14.525568" level="INFO">Repeating keyword, round 515/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.526761" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.526094" elapsed="0.001507"/>
</kw>
<msg time="2026-07-28T01:58:14.527662" level="INFO">Repeating keyword, round 516/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.528154" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.527801" elapsed="0.001961"/>
</kw>
<msg time="2026-07-28T01:58:14.529823" level="INFO">Repeating keyword, round 517/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.530380" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.529977" elapsed="0.002362"/>
</kw>
<msg time="2026-07-28T01:58:14.532408" level="INFO">Repeating keyword, round 518/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.532984" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.532617" elapsed="0.001214"/>
</kw>
<msg time="2026-07-28T01:58:14.533895" level="INFO">Repeating keyword, round 519/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.534393" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.534042" elapsed="0.001957"/>
</kw>
<msg time="2026-07-28T01:58:14.536058" level="INFO">Repeating keyword, round 520/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.536616" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.536197" elapsed="0.002400"/>
</kw>
<msg time="2026-07-28T01:58:14.538659" level="INFO">Repeating keyword, round 521/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.539225" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.538809" elapsed="0.001247"/>
</kw>
<msg time="2026-07-28T01:58:14.540114" level="INFO">Repeating keyword, round 522/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.540661" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.540256" elapsed="0.001313"/>
</kw>
<msg time="2026-07-28T01:58:14.541667" level="INFO">Repeating keyword, round 523/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.542174" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.541820" elapsed="0.001919"/>
</kw>
<msg time="2026-07-28T01:58:14.543798" level="INFO">Repeating keyword, round 524/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.544332" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.543935" elapsed="0.001286"/>
</kw>
<msg time="2026-07-28T01:58:14.545280" level="INFO">Repeating keyword, round 525/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.545831" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.545428" elapsed="0.001982"/>
</kw>
<msg time="2026-07-28T01:58:14.547502" level="INFO">Repeating keyword, round 526/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.548046" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.547641" elapsed="0.001235"/>
</kw>
<msg time="2026-07-28T01:58:14.548938" level="INFO">Repeating keyword, round 527/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.549427" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.549077" elapsed="0.002010"/>
</kw>
<msg time="2026-07-28T01:58:14.551146" level="INFO">Repeating keyword, round 528/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.551724" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.551295" elapsed="0.001228"/>
</kw>
<msg time="2026-07-28T01:58:14.552583" level="INFO">Repeating keyword, round 529/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.553076" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.552721" elapsed="0.001847"/>
</kw>
<msg time="2026-07-28T01:58:14.554628" level="INFO">Repeating keyword, round 530/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.555127" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.554767" elapsed="0.001189"/>
</kw>
<msg time="2026-07-28T01:58:14.556018" level="INFO">Repeating keyword, round 531/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.556571" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.556164" elapsed="0.002041"/>
</kw>
<msg time="2026-07-28T01:58:14.558264" level="INFO">Repeating keyword, round 532/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.558828" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.558403" elapsed="0.001246"/>
</kw>
<msg time="2026-07-28T01:58:14.559708" level="INFO">Repeating keyword, round 533/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.560188" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.559846" elapsed="0.002200"/>
</kw>
<msg time="2026-07-28T01:58:14.562129" level="INFO">Repeating keyword, round 534/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.563584" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.562323" elapsed="0.002271"/>
</kw>
<msg time="2026-07-28T01:58:14.564675" level="INFO">Repeating keyword, round 535/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.565245" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.564869" elapsed="0.001695"/>
</kw>
<msg time="2026-07-28T01:58:14.566698" level="INFO">Repeating keyword, round 536/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.567750" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.567085" elapsed="0.001642"/>
</kw>
<msg time="2026-07-28T01:58:14.568807" level="INFO">Repeating keyword, round 537/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.569494" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.568997" elapsed="0.002602"/>
</kw>
<msg time="2026-07-28T01:58:14.571687" level="INFO">Repeating keyword, round 538/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.572654" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.571880" elapsed="0.001750"/>
</kw>
<msg time="2026-07-28T01:58:14.573718" level="INFO">Repeating keyword, round 539/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.574441" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.573909" elapsed="0.003008"/>
</kw>
<msg time="2026-07-28T01:58:14.577000" level="INFO">Repeating keyword, round 540/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.577793" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.577191" elapsed="0.001549"/>
</kw>
<msg time="2026-07-28T01:58:14.578798" level="INFO">Repeating keyword, round 541/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.579271" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.578934" elapsed="0.001723"/>
</kw>
<msg time="2026-07-28T01:58:14.580770" level="INFO">Repeating keyword, round 542/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.581835" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.581194" elapsed="0.001480"/>
</kw>
<msg time="2026-07-28T01:58:14.582769" level="INFO">Repeating keyword, round 543/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.583515" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.582968" elapsed="0.001642"/>
</kw>
<msg time="2026-07-28T01:58:14.584706" level="INFO">Repeating keyword, round 544/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.585398" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.584902" elapsed="0.002116"/>
</kw>
<msg time="2026-07-28T01:58:14.587103" level="INFO">Repeating keyword, round 545/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.588035" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.587429" elapsed="0.001524"/>
</kw>
<msg time="2026-07-28T01:58:14.589035" level="INFO">Repeating keyword, round 546/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.589782" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.589231" elapsed="0.003050"/>
</kw>
<msg time="2026-07-28T01:58:14.592366" level="INFO">Repeating keyword, round 547/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.593121" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.592582" elapsed="0.001573"/>
</kw>
<msg time="2026-07-28T01:58:14.594311" level="INFO">Repeating keyword, round 548/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.595502" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.594682" elapsed="0.001941"/>
</kw>
<msg time="2026-07-28T01:58:14.596745" level="INFO">Repeating keyword, round 549/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.597847" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.597041" elapsed="0.001918"/>
</kw>
<msg time="2026-07-28T01:58:14.599084" level="INFO">Repeating keyword, round 550/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.600151" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.599377" elapsed="0.001873"/>
</kw>
<msg time="2026-07-28T01:58:14.601369" level="INFO">Repeating keyword, round 551/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.602504" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.601818" elapsed="0.003030"/>
</kw>
<msg time="2026-07-28T01:58:14.604936" level="INFO">Repeating keyword, round 552/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.605734" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.605135" elapsed="0.001454"/>
</kw>
<msg time="2026-07-28T01:58:14.606672" level="INFO">Repeating keyword, round 553/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.607360" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.606870" elapsed="0.002775"/>
</kw>
<msg time="2026-07-28T01:58:14.609730" level="INFO">Repeating keyword, round 554/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.610512" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.609985" elapsed="0.001338"/>
</kw>
<msg time="2026-07-28T01:58:14.611378" level="INFO">Repeating keyword, round 555/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.611859" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.611528" elapsed="0.001969"/>
</kw>
<msg time="2026-07-28T01:58:14.613561" level="INFO">Repeating keyword, round 556/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.614093" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.613712" elapsed="0.001221"/>
</kw>
<msg time="2026-07-28T01:58:14.614990" level="INFO">Repeating keyword, round 557/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.615475" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.615125" elapsed="0.001454"/>
</kw>
<msg time="2026-07-28T01:58:14.616638" level="INFO">Repeating keyword, round 558/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.617106" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.616772" elapsed="0.002319"/>
</kw>
<msg time="2026-07-28T01:58:14.619149" level="INFO">Repeating keyword, round 559/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.619694" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.619284" elapsed="0.001222"/>
</kw>
<msg time="2026-07-28T01:58:14.620625" level="INFO">Repeating keyword, round 560/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.621092" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.620760" elapsed="0.001870"/>
</kw>
<msg time="2026-07-28T01:58:14.622689" level="INFO">Repeating keyword, round 561/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.623316" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.622822" elapsed="0.001950"/>
</kw>
<msg time="2026-07-28T01:58:14.624830" level="INFO">Repeating keyword, round 562/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.625344" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.624964" elapsed="0.001835"/>
</kw>
<msg time="2026-07-28T01:58:14.626859" level="INFO">Repeating keyword, round 563/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.627368" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.626994" elapsed="0.002281"/>
</kw>
<msg time="2026-07-28T01:58:14.629334" level="INFO">Repeating keyword, round 564/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.629901" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.629487" elapsed="0.001514"/>
</kw>
<msg time="2026-07-28T01:58:14.631060" level="INFO">Repeating keyword, round 565/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.631560" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.631196" elapsed="0.002946"/>
</kw>
<msg time="2026-07-28T01:58:14.634202" level="INFO">Repeating keyword, round 566/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.635533" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.634345" elapsed="0.002450"/>
</kw>
<msg time="2026-07-28T01:58:14.636861" level="INFO">Repeating keyword, round 567/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.637396" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.637051" elapsed="0.001670"/>
</kw>
<msg time="2026-07-28T01:58:14.638854" level="INFO">Repeating keyword, round 568/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.639950" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.639196" elapsed="0.001591"/>
</kw>
<msg time="2026-07-28T01:58:14.640865" level="INFO">Repeating keyword, round 569/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.641620" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.641053" elapsed="0.002790"/>
</kw>
<msg time="2026-07-28T01:58:14.643924" level="INFO">Repeating keyword, round 570/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.644680" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.644160" elapsed="0.001324"/>
</kw>
<msg time="2026-07-28T01:58:14.645543" level="INFO">Repeating keyword, round 571/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.646044" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.645705" elapsed="0.001982"/>
</kw>
<msg time="2026-07-28T01:58:14.647750" level="INFO">Repeating keyword, round 572/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.648279" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.647888" elapsed="0.001208"/>
</kw>
<msg time="2026-07-28T01:58:14.649153" level="INFO">Repeating keyword, round 573/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.649672" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.649290" elapsed="0.001922"/>
</kw>
<msg time="2026-07-28T01:58:14.651271" level="INFO">Repeating keyword, round 574/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.651830" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.651406" elapsed="0.001274"/>
</kw>
<msg time="2026-07-28T01:58:14.652738" level="INFO">Repeating keyword, round 575/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.653208" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.652873" elapsed="0.002393"/>
</kw>
<msg time="2026-07-28T01:58:14.655342" level="INFO">Repeating keyword, round 576/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.655916" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.655559" elapsed="0.001237"/>
</kw>
<msg time="2026-07-28T01:58:14.656853" level="INFO">Repeating keyword, round 577/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.657321" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.656988" elapsed="0.002254"/>
</kw>
<msg time="2026-07-28T01:58:14.659301" level="INFO">Repeating keyword, round 578/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.659937" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.659590" elapsed="0.001364"/>
</kw>
<msg time="2026-07-28T01:58:14.661015" level="INFO">Repeating keyword, round 579/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.661507" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.661152" elapsed="0.001914"/>
</kw>
<msg time="2026-07-28T01:58:14.663125" level="INFO">Repeating keyword, round 580/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.663670" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.663262" elapsed="0.001186"/>
</kw>
<msg time="2026-07-28T01:58:14.664562" level="INFO">Repeating keyword, round 581/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.665039" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.664707" elapsed="0.002735"/>
</kw>
<msg time="2026-07-28T01:58:14.667526" level="INFO">Repeating keyword, round 582/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.668042" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.667663" elapsed="0.001202"/>
</kw>
<msg time="2026-07-28T01:58:14.668963" level="INFO">Repeating keyword, round 583/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.669442" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.669109" elapsed="0.001478"/>
</kw>
<msg time="2026-07-28T01:58:14.670645" level="INFO">Repeating keyword, round 584/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.671241" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.670780" elapsed="0.002304"/>
</kw>
<msg time="2026-07-28T01:58:14.673143" level="INFO">Repeating keyword, round 585/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.673724" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.673279" elapsed="0.001263"/>
</kw>
<msg time="2026-07-28T01:58:14.674600" level="INFO">Repeating keyword, round 586/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.675073" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.674736" elapsed="0.001821"/>
</kw>
<msg time="2026-07-28T01:58:14.676615" level="INFO">Repeating keyword, round 587/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.677129" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.676782" elapsed="0.001852"/>
</kw>
<msg time="2026-07-28T01:58:14.678701" level="INFO">Repeating keyword, round 588/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.679268" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.678916" elapsed="0.001190"/>
</kw>
<msg time="2026-07-28T01:58:14.680165" level="INFO">Repeating keyword, round 589/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.680677" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.680303" elapsed="0.001928"/>
</kw>
<msg time="2026-07-28T01:58:14.682289" level="INFO">Repeating keyword, round 590/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.682842" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.682427" elapsed="0.001246"/>
</kw>
<msg time="2026-07-28T01:58:14.683731" level="INFO">Repeating keyword, round 591/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.684245" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.683867" elapsed="0.002094"/>
</kw>
<msg time="2026-07-28T01:58:14.686020" level="INFO">Repeating keyword, round 592/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.686576" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.686156" elapsed="0.001250"/>
</kw>
<msg time="2026-07-28T01:58:14.687511" level="INFO">Repeating keyword, round 593/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.688029" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.687659" elapsed="0.001944"/>
</kw>
<msg time="2026-07-28T01:58:14.689663" level="INFO">Repeating keyword, round 594/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.690188" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.689804" elapsed="0.001364"/>
</kw>
<msg time="2026-07-28T01:58:14.691295" level="INFO">Repeating keyword, round 595/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.692060" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.691586" elapsed="0.002847"/>
</kw>
<msg time="2026-07-28T01:58:14.694544" level="INFO">Repeating keyword, round 596/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.695353" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.694826" elapsed="0.001801"/>
</kw>
<msg time="2026-07-28T01:58:14.696709" level="INFO">Repeating keyword, round 597/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.697347" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.696901" elapsed="0.002009"/>
</kw>
<msg time="2026-07-28T01:58:14.698971" level="INFO">Repeating keyword, round 598/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.699513" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.699109" elapsed="0.001388"/>
</kw>
<msg time="2026-07-28T01:58:14.700559" level="INFO">Repeating keyword, round 599/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.701032" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.700695" elapsed="0.001799"/>
</kw>
<msg time="2026-07-28T01:58:14.702554" level="INFO">Repeating keyword, round 600/600.</msg>
<kw name="Start Process" owner="Process">
<msg time="2026-07-28T01:58:14.703108" level="INFO">Starting process:
nc -w 1 10.30.170.50 6633</msg>
<arg>nc</arg>
<arg>-w</arg>
<arg>1</arg>
<arg>${ODL_SYSTEM_IP}</arg>
<arg>${openflow_port}</arg>
<doc>Starts a new process on background.</doc>
<status status="PASS" start="2026-07-28T01:58:14.702763" elapsed="0.001939"/>
</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-07-28T01:58:13.613449" elapsed="1.091331"/>
</kw>
<kw name="Run" owner="OperatingSystem">
<msg time="2026-07-28T01:58:14.705858" 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-07-28T01:58:14.704958" elapsed="0.141936"/>
</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-07-28T01:58:14.853662" 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-07-28T01:58:14.853254" elapsed="0.000437"/>
</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-07-28T01:58:14.854952" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:14.854678" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:14.854648" elapsed="0.000389"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:14.855352" 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-07-28T01:58:14.855472" 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-07-28T01:58:14.855166" elapsed="0.000334"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:14.856015" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.50" 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-07-28T01:58:14.855630" elapsed="0.000431"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:14.856587" 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-07-28T01:58:14.856190" elapsed="0.000423"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:14.857484" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:14.857572" 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-07-28T01:58:14.857169" elapsed="0.000428"/>
</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-07-28T01:58:14.857734" elapsed="0.000356"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:14.858909" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:15.183434" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:13 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:14.858588" elapsed="0.325117"/>
</kw>
<msg time="2026-07-28T01:58:15.183789" 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-07-28T01:58:14.858235" elapsed="0.325641"/>
</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-07-28T01:58:14.856803" elapsed="0.327223"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.184555" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-07-28T01:58:15.207267" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:15.207429" level="INFO">${stdout} = 4978</msg>
<msg time="2026-07-28T01:58:15.207517" 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-07-28T01:58:15.184248" elapsed="0.023351"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.207799" elapsed="0.000361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.208897" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:15.208424" elapsed="0.000534"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.209362" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:15.209076" elapsed="0.000364"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.209041" elapsed="0.000453"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:15.209725" elapsed="0.000038"/>
</return>
<status status="PASS" start="2026-07-28T01:58:15.209571" elapsed="0.000239"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.209550" elapsed="0.000338"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.209940" 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-07-28T01:58:15.214779" elapsed="0.000511"/>
</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-07-28T01:58:15.215504" elapsed="0.000273"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.215948" elapsed="0.000183"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:15.210404" elapsed="0.005801"/>
</kw>
<msg time="2026-07-28T01:58:15.216371" level="INFO">${output} = 4978</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-07-28T01:58:14.854029" elapsed="0.362376"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:15.216981" level="INFO">${pid} = 4978</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-07-28T01:58:15.216690" elapsed="0.000326"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-07-28T01:58:15.217129" elapsed="0.000043"/>
</return>
<msg time="2026-07-28T01:58:15.217362" level="INFO">${output} = 4978</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-07-28T01:58:14.851175" elapsed="0.366221"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.218005" level="INFO">4978</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:15.217657" elapsed="0.000411"/>
</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-07-28T01:58:15.221979" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:15.221595" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.221568" elapsed="0.000529"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.222520" 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-07-28T01:58:15.222664" 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-07-28T01:58:15.222263" elapsed="0.000438"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.223520" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.50" 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-07-28T01:58:15.222924" elapsed="0.000706"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.224376" 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-07-28T01:58:15.223813" elapsed="0.000663"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.225950" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:15.226060" 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-07-28T01:58:15.225507" elapsed="0.000586"/>
</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-07-28T01:58:15.226343" elapsed="0.000437"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.227675" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:15.545044" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:15 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:15.227295" elapsed="0.318064"/>
</kw>
<msg time="2026-07-28T01:58:15.545509" 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-07-28T01:58:15.226959" elapsed="0.318670"/>
</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-07-28T01:58:15.224878" elapsed="0.320969"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.546596" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-07-28T01:58:15.559362" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:58:15.559600" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:15.559666" 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-07-28T01:58:15.546163" elapsed="0.013537"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.559898" elapsed="0.000369"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.561651" 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-07-28T01:58:15.560710" elapsed="0.001057"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.562354" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:15.562018" elapsed="0.000550"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.561902" elapsed="0.000730"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:15.563096" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-07-28T01:58:15.562764" elapsed="0.000477"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.562727" elapsed="0.000572"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.563383" 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-07-28T01:58:15.570259" elapsed="0.000432"/>
</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-07-28T01:58:15.570834" elapsed="0.000171"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.571165" 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-07-28T01:58:15.564252" elapsed="0.007068"/>
</kw>
<msg time="2026-07-28T01:58:15.571445" 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-07-28T01:58:15.218591" elapsed="0.352894"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.571928" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:15.571669" elapsed="0.000302"/>
</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-07-28T01:58:14.847279" elapsed="0.724751"/>
</kw>
<kw name="Get Process Thread Count On Remote System" owner="Utils">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.574722" level="INFO">${cmd} = ps --no-headers -o nlwp 4978</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-07-28T01:58:15.574396" elapsed="0.000353"/>
</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-07-28T01:58:15.576056" elapsed="0.000101"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:15.575787" elapsed="0.000410"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.575767" elapsed="0.000455"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.576579" 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-07-28T01:58:15.576685" 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-07-28T01:58:15.576352" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.577289" level="INFO">Attempting to execute command "ps --no-headers -o nlwp 4978" on remote system "10.30.170.50" 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-07-28T01:58:15.576875" elapsed="0.000461"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.577895" 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-07-28T01:58:15.577518" elapsed="0.000404"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.578901" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:15.578982" 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-07-28T01:58:15.578578" elapsed="0.000427"/>
</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-07-28T01:58:15.579139" elapsed="0.000388"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.580415" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:15.948729" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:15 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:15.580051" elapsed="0.368922"/>
</kw>
<msg time="2026-07-28T01:58:15.949064" 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-07-28T01:58:15.579673" elapsed="0.369481"/>
</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-07-28T01:58:15.578150" elapsed="0.371164"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.949873" level="INFO">Executing command 'ps --no-headers -o nlwp 4978'.</msg>
<msg time="2026-07-28T01:58:15.962220" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:15.962359" level="INFO">${stdout} =  166</msg>
<msg time="2026-07-28T01:58:15.962404" 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-07-28T01:58:15.949566" elapsed="0.012861"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.962650" elapsed="0.000308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.963515" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:15.963128" elapsed="0.000432"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.963863" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:15.963654" elapsed="0.000265"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.963626" elapsed="0.000319"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:15.964107" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T01:58:15.964000" elapsed="0.000209"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.963985" elapsed="0.000250"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:15.964271" elapsed="0.000015"/>
</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-07-28T01:58:15.967130" elapsed="0.000400"/>
</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-07-28T01:58:15.967672" elapsed="0.000211"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:15.968007" elapsed="0.000099"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:15.964620" elapsed="0.003543"/>
</kw>
<msg time="2026-07-28T01:58:15.968319" level="INFO">${output} =  166</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-07-28T01:58:15.575105" elapsed="0.393312"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:15.968817" level="INFO">${thread_count} =  166</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-07-28T01:58:15.968598" elapsed="0.000283"/>
</kw>
<return>
<value>${thread_count}</value>
<status status="PASS" start="2026-07-28T01:58:15.968955" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:58:15.969118" level="INFO">${ending_thread_count} =  166</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-07-28T01:58:15.572252" elapsed="0.396892"/>
</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-07-28T01:58:15.975251" 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-07-28T01:58:15.974895" elapsed="0.000384"/>
</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-07-28T01:58:15.976596" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:15.976297" elapsed="0.000358"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:15.976278" elapsed="0.000402"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.976957" 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-07-28T01:58:15.977099" 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-07-28T01:58:15.976800" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.977686" level="INFO">Attempting to execute command "ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}'" on remote system "10.30.170.50" 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-07-28T01:58:15.977250" elapsed="0.000483"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.978277" 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-07-28T01:58:15.977862" elapsed="0.000441"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:15.979251" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:15.979330" 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-07-28T01:58:15.978924" elapsed="0.000429"/>
</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-07-28T01:58:15.979546" elapsed="0.000374"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:15.980852" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:16.295255" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:15 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:15.980449" elapsed="0.315021"/>
</kw>
<msg time="2026-07-28T01:58:16.295565" 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-07-28T01:58:15.980066" elapsed="0.315591"/>
</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-07-28T01:58:15.978548" elapsed="0.317274"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.296714" level="INFO">Executing command 'ps -elf | grep -v grep | grep java.*karaf | awk '{print $4}''.</msg>
<msg time="2026-07-28T01:58:16.319406" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:16.319695" level="INFO">${stdout} = 4978</msg>
<msg time="2026-07-28T01:58:16.319793" 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-07-28T01:58:16.296086" elapsed="0.023758"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:16.320267" elapsed="0.000527"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.321773" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:16.321117" elapsed="0.000749"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:16.322339" elapsed="0.000036"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:16.322043" elapsed="0.000401"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.321992" 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-07-28T01:58:16.322885" elapsed="0.000059"/>
</return>
<status status="PASS" start="2026-07-28T01:58:16.322648" elapsed="0.000369"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.322614" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:16.323148" 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-07-28T01:58:16.327070" elapsed="0.000474"/>
</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-07-28T01:58:16.327735" elapsed="0.000219"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:16.328121" elapsed="0.000139"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:16.323811" elapsed="0.004522"/>
</kw>
<msg time="2026-07-28T01:58:16.328524" level="INFO">${output} = 4978</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-07-28T01:58:15.975660" elapsed="0.352900"/>
</kw>
<kw name="Fetch From Left" owner="String">
<msg time="2026-07-28T01:58:16.329091" level="INFO">${pid} = 4978</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-07-28T01:58:16.328792" elapsed="0.000335"/>
</kw>
<return>
<value>${pid}</value>
<status status="PASS" start="2026-07-28T01:58:16.329193" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:58:16.329401" level="INFO">${output} = 4978</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-07-28T01:58:15.972809" elapsed="0.356626"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.329995" level="INFO">4978</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:16.329651" elapsed="0.000406"/>
</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-07-28T01:58:16.333600" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:16.333193" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.333167" elapsed="0.000545"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.334062" 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-07-28T01:58:16.334204" 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-07-28T01:58:16.333877" elapsed="0.000364"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.334962" level="INFO">Attempting to execute command "netstat -na | grep 6633" on remote system "10.30.170.50" 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-07-28T01:58:16.334411" elapsed="0.000615"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.335737" 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-07-28T01:58:16.335203" elapsed="0.000570"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.336986" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:16.337092" 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-07-28T01:58:16.336566" elapsed="0.000559"/>
</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-07-28T01:58:16.337305" elapsed="0.000369"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.338477" level="INFO">Logging into '10.30.170.50:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:16.659596" 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 Tue Jul 28 01:57:47 UTC 2026

  System load:  0.62               Processes:             122
  Usage of /:   11.4% of 77.35GB   Users logged in:       0
  Memory usage: 2%                 IPv4 address for ens3: 10.30.170.50
  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: Tue Jul 28 01:58:16 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:16.338147" elapsed="0.321726"/>
</kw>
<msg time="2026-07-28T01:58:16.659963" 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-07-28T01:58:16.337815" elapsed="0.322233"/>
</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-07-28T01:58:16.336036" elapsed="0.324136"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.660718" level="INFO">Executing command 'netstat -na | grep 6633'.</msg>
<msg time="2026-07-28T01:58:16.673371" level="INFO">Command exited with return code 1.</msg>
<msg time="2026-07-28T01:58:16.673566" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:16.673631" 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-07-28T01:58:16.660400" elapsed="0.013265"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:16.673877" elapsed="0.000333"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.675129" 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-07-28T01:58:16.674501" elapsed="0.000728"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:16.675746" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:16.675404" elapsed="0.000452"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.675352" elapsed="0.000557"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:16.676260" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-07-28T01:58:16.676026" elapsed="0.000371"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.675993" elapsed="0.000457"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:16.676560" elapsed="0.000069"/>
</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-07-28T01:58:16.681672" elapsed="0.000740"/>
</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-07-28T01:58:16.682807" elapsed="0.000357"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:16.683431" elapsed="0.000252"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:16.677274" elapsed="0.006526"/>
</kw>
<msg time="2026-07-28T01:58:16.684067" 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-07-28T01:58:16.330513" elapsed="0.353608"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.685192" level="INFO"/>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:16.684441" elapsed="0.000864"/>
</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-07-28T01:58:15.969307" elapsed="0.716096"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.685852" level="INFO">starting count:  159
ending count:  166</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-07-28T01:58:16.685555" elapsed="0.000342"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.686439" level="INFO">${acceptable_thread_count} = 189.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-07-28T01:58:16.686033" elapsed="0.000447"/>
</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-07-28T01:58:16.686619" elapsed="0.000500"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.688267" 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-07-28T01:58:16.687847" elapsed="0.000446"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:58:16.688527" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-07-28T01:58:16.688367" elapsed="0.000231"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.688348" elapsed="0.000274"/>
</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-07-28T01:58:16.688751" 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-07-28T01:58:16.688899" 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-07-28T01:58:16.689052" 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-07-28T01:58:16.689195" elapsed="0.000076"/>
</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-07-28T01:58:16.689396" 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-07-28T01:58:16.689549" elapsed="0.000021"/>
</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-07-28T01:58:16.689684" 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-07-28T01:58:16.689889" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:16.689766" elapsed="0.000174"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:16.689749" elapsed="0.000215"/>
</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-07-28T01:58:16.687524" elapsed="0.002489"/>
</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-07-28T01:58:12.164135" elapsed="4.525924"/>
</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-07-28T01:58:12.124943" elapsed="4.565623"/>
</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-07-28T01:58:16.772280" 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-07-28T01:58:16.772038" elapsed="0.000294"/>
</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-07-28T01:58:16.774745" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:16.774427" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:16.774406" elapsed="0.000423"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.775134" 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-07-28T01:58:16.775237" 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-07-28T01:58:16.774980" elapsed="0.000284"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.775815" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:58:16.775417" elapsed="0.000444"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.776390" 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-07-28T01:58:16.776021" elapsed="0.000395"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:16.777322" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:16.777398" 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-07-28T01:58:16.777039" 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-07-28T01:58:16.777600" elapsed="0.000325"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:16.778787" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:17.428722" 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 Tue Jul 28 01:58:16 UTC 2026

  System load:  0.16               Processes:             107
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:57:14 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:16.778468" elapsed="0.650444"/>
</kw>
<msg time="2026-07-28T01:58:17.429014" 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-07-28T01:58:16.778093" elapsed="0.651100"/>
</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-07-28T01:58:16.776683" elapsed="0.652632"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:17.429870" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:58:18.576283" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:58:18.576763" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:18.576875" 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-07-28T01:58:17.429598" elapsed="1.147338"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:18.577506" elapsed="0.000664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:18.579554" 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-07-28T01:58:18.578782" elapsed="0.001011"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:18.580360" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:18.579986" elapsed="0.000523"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:18.579933" elapsed="0.000631"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:18.581004" elapsed="0.000069"/>
</return>
<status status="PASS" start="2026-07-28T01:58:18.580685" elapsed="0.000469"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:18.580651" elapsed="0.000558"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:18.581287" 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-07-28T01:58:18.585980" elapsed="0.000394"/>
</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-07-28T01:58:18.586562" elapsed="0.000207"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:18.586924" elapsed="0.000104"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:18.582174" elapsed="0.004908"/>
</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-07-28T01:58:16.773935" elapsed="1.813279"/>
</kw>
<msg time="2026-07-28T01:58:18.587270" 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-07-28T01:58:16.773356" elapsed="1.813969"/>
</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-07-28T01:58:16.772890" elapsed="1.814520"/>
</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-07-28T01:58:18.589641" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:18.589288" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:18.589270" elapsed="0.000455"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.590053" 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-07-28T01:58:18.590162" 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-07-28T01:58:18.589879" elapsed="0.000310"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:18.590787" 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.224" 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-07-28T01:58:18.590344" elapsed="0.000492"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.591537" 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-07-28T01:58:18.591062" elapsed="0.000504"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:58:18.592550" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:18.592631" 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-07-28T01:58:18.592209" elapsed="0.000481"/>
</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-07-28T01:58:18.592856" elapsed="0.000334"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.594146" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:18.932432" 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 Tue Jul 28 01:58:16 UTC 2026

  System load:  0.16               Processes:             107
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:58:17 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:18.593825" elapsed="0.339013"/>
</kw>
<msg time="2026-07-28T01:58:18.933007" 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-07-28T01:58:18.593404" elapsed="0.339831"/>
</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-07-28T01:58:18.591802" elapsed="0.341701"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.934835" 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-07-28T01:58:18.978235" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:58:18.978543" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:58:18.978649" 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-07-28T01:58:18.934169" elapsed="0.044531"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:18.979084" elapsed="0.000563"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:18.980845" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:18.980149" elapsed="0.000794"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:18.981571" elapsed="0.000045"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:18.981186" elapsed="0.000506"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:18.981123" elapsed="0.000623"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:58:18.982115" elapsed="0.000060"/>
</return>
<status status="PASS" start="2026-07-28T01:58:18.981869" elapsed="0.000379"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:18.981832" elapsed="0.000469"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:58:18.982381" elapsed="0.000043"/>
</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-07-28T01:58:18.988556" elapsed="0.000339"/>
</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-07-28T01:58:18.989069" elapsed="0.000172"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:58:18.989389" elapsed="0.000120"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:58:18.983232" elapsed="0.006329"/>
</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-07-28T01:58:18.588746" elapsed="0.400909"/>
</kw>
<msg time="2026-07-28T01:58:18.989711" 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-07-28T01:58:18.588118" elapsed="0.401646"/>
</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-07-28T01:58:18.587638" elapsed="0.402213"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:58:16.772569" elapsed="2.217342"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.994855" 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-07-28T01:58:18.994377" elapsed="0.000505"/>
</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-07-28T01:58:18.996651" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:58:18.996750" 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-07-28T01:58:18.996315" elapsed="0.000460"/>
</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-07-28T01:58:18.996937" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:58:18.998141" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:58:19.379807" 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 Tue Jul 28 01:58:16 UTC 2026

  System load:  0.16               Processes:             107
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:58:18 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:58:18.997823" elapsed="0.382138"/>
</kw>
<msg time="2026-07-28T01:58:19.380044" 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-07-28T01:58:18.997441" elapsed="0.382684"/>
</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-07-28T01:58:18.995869" elapsed="0.384370"/>
</kw>
<msg time="2026-07-28T01:58:19.380293" 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-07-28T01:58:18.995436" elapsed="0.384905"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:58:18.995067" elapsed="0.385350"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:58:19.380482" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:58:19.380693" 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-07-28T01:58:18.993896" elapsed="0.386822"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.381478" 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-07-28T01:58:19.381031" elapsed="0.000491"/>
</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-07-28T01:58:19.383708" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:19.381606" elapsed="0.002159"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:19.381582" elapsed="0.002210"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.384266" level="INFO">Start mininet --topo tree,1 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:19.383965" elapsed="0.000347"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:58:19.386440" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:58:19.384496" elapsed="0.002021"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:58:19.599101" 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-07-28T01:58:19.386683" elapsed="0.212710"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.600250" 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-07-28T01:58:19.599851" elapsed="0.000449"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:58:19.604698" 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-07-28T01:58:19.600497" elapsed="0.004257"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:58:19.618655" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.50:6633"
        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-07-28T01:58:19.604914" elapsed="0.013804"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:58:19.618774" elapsed="0.000054"/>
</return>
<msg time="2026-07-28T01:58:19.619021" 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-07-28T01:58:16.769809" elapsed="2.849238"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.619696" 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-07-28T01:58:19.619327" elapsed="0.000411"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:19.620257" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b017cd50&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-07-28T01:58:19.619895" elapsed="0.000570"/>
</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-07-28T01:58:19.630678" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:58:19.630891" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:58:19 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-07-28T01:58:19.631013" 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-07-28T01:58:19.621529" elapsed="0.009510"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.636320" 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-07-28T01:58:19.631287" elapsed="0.005138"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.641978" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T01:58:19.642152" 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-07-28T01:58:19.636881" elapsed="0.005324"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:58:19.643267" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-07-28T01:58:19.643466" 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-07-28T01:58:19.642600" elapsed="0.000947">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-07-28T01:58:19.621230" elapsed="0.022429">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.655383" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.655814" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:58:20.655989" 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-07-28T01:58:20.645340" elapsed="0.010688"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.660622" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]},{"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-07-28T01:58:20.656381" elapsed="0.004333"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.664427" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T01:58:20.664564" 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-07-28T01:58:20.661002" elapsed="0.003599"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.665362" 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-07-28T01:58:20.664922" elapsed="0.000553"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-07-28T01:58:20.644626" elapsed="0.020945"/>
</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-07-28T01:58:19.620648" elapsed="1.044989"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:58:16.769399" elapsed="3.896320"/>
</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-07-28T01:58:20.674162" 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-07-28T01:58:20.674416" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.673954" elapsed="0.000522"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:20.675537" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a34ab4c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:20.674839" elapsed="0.000741"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.676084" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:20.675796" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.676586" 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-07-28T01:58:20.676300" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.677074" 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-07-28T01:58:20.676803" elapsed="0.000296"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.678095" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.677293" elapsed="0.000833"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.678703" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.678326" elapsed="0.000421"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.679261" 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-07-28T01:58:20.678940" elapsed="0.000362"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.679833" 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-07-28T01:58:20.679508" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.680379" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.680065" elapsed="0.000359"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.680948" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.680628" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.681525" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a34ab4c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.681185" 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-07-28T01:58:20.673405" elapsed="0.008218"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.695006" 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-07-28T01:58:20.694546" elapsed="0.000663"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.722497" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:20.722634" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:20.722879" 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-07-28T01:58:20.695447" elapsed="0.027472"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.726959" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.723336" elapsed="0.003698"/>
</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-07-28T01:58:20.693843" elapsed="0.033303"/>
</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-07-28T01:58:20.741159" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:20.740822" elapsed="0.000365"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.760940" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.761584" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:20.761845" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:20.741349" elapsed="0.020553"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.763081" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.762361" elapsed="0.000823"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.769438" 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-07-28T01:58:20.763619" 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-07-28T01:58:20.773054" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.769919" elapsed="0.003190"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.769870" elapsed="0.003263"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.777042" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:20.777091" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:20.773323" elapsed="0.003800"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:20.779544" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:20.777214" elapsed="0.002389"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.777194" elapsed="0.002433"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:20.779661" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:58:20.779890" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:20.779945" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:20.740364" elapsed="0.039604"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.782473" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.780587" elapsed="0.001935"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.780569" elapsed="0.001974"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.783201" 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-07-28T01:58:20.782784" elapsed="0.000445"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.783811" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:20.783436" elapsed="0.000402"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:20.783887" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:20.784070" 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-07-28T01:58:20.780226" elapsed="0.003870"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:20.784344" elapsed="0.000431"/>
</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-07-28T01:58:20.739572" elapsed="0.045267"/>
</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-07-28T01:58:20.727424" elapsed="0.057466"/>
</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-07-28T01:58:20.797831" 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-07-28T01:58:20.797995" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.797683" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:20.798708" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698860&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:20.798234" elapsed="0.000503"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.799253" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:20.798933" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.799792" 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-07-28T01:58:20.799506" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.800296" 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-07-28T01:58:20.800012" elapsed="0.000319"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.801294" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.800585" elapsed="0.000739"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.801893" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.801538" elapsed="0.000397"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.802479" 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-07-28T01:58:20.802128" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.803148" 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-07-28T01:58:20.802797" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.803753" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.803399" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.804326" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.803994" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.804965" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b0698860&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.804599" 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-07-28T01:58:20.797304" elapsed="0.007761"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.805665" 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-07-28T01:58:20.805255" elapsed="0.000441"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.806130" 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-07-28T01:58:20.805885" 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-07-28T01:58:20.815907" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:20.815583" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.823367" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.823676" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:20.823797" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:20.816097" elapsed="0.007735"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.824432" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.824094" elapsed="0.000420"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.827193" 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-07-28T01:58:20.824731" elapsed="0.002579"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.830495" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.827394" elapsed="0.003177"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.827370" elapsed="0.003250"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.835853" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:20.835918" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:20.830878" elapsed="0.005071"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:20.839205" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:20.836057" elapsed="0.003254"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.836030" elapsed="0.003323"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:20.839413" elapsed="0.000083"/>
</return>
<msg time="2026-07-28T01:58:20.839709" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:20.839762" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:20.815200" elapsed="0.024589"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.842837" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.840531" elapsed="0.002363"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.840509" elapsed="0.002408"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.843569" 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-07-28T01:58:20.843117" elapsed="0.000479"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.844162" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:20.843804" elapsed="0.000385"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:20.844238" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:20.844420" 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-07-28T01:58:20.840098" elapsed="0.004347"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:20.844663" 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-07-28T01:58:20.814411" elapsed="0.030722"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.854280" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:20.853968" elapsed="0.000340"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.864522" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.864920" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:20.865098" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:20.854488" elapsed="0.010646"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.865795" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.865415" elapsed="0.000444"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.869634" 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-07-28T01:58:20.866111" 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-07-28T01:58:20.872896" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.869904" elapsed="0.003061"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.869875" elapsed="0.003123"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.877614" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:20.877661" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:20.873253" elapsed="0.004431"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:20.879966" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:20.877763" elapsed="0.002260"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.877744" elapsed="0.002303"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:20.880080" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:20.880279" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:20.880323" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:20.853550" elapsed="0.026796"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.882815" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.880939" elapsed="0.001920"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.880920" elapsed="0.001961"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.883483" 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-07-28T01:58:20.883067" elapsed="0.000444"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.884066" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:20.883712" elapsed="0.000380"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:20.884140" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:20.884321" 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-07-28T01:58:20.880605" 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-07-28T01:58:20.884565" 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-07-28T01:58:20.852874" elapsed="0.032149"/>
</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-07-28T01:58:20.793378" elapsed="0.091705"/>
</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-07-28T01:58:20.785066" elapsed="0.100075"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.901743" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.901788" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:20.901879" 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-07-28T01:58:20.892948" elapsed="0.008957"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.905098" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.902103" elapsed="0.003055"/>
</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-07-28T01:58:20.892533" elapsed="0.012704"/>
</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-07-28T01:58:20.916502" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:20.916179" elapsed="0.000351"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.925525" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.925794" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:20.925901" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:20.916687" elapsed="0.009239"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.926408" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:20.926139" elapsed="0.000330"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.929001" 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-07-28T01:58:20.926665" elapsed="0.002388"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.931286" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.929134" elapsed="0.002205"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.929110" elapsed="0.002253"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.935914" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:20.935978" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:20.931639" elapsed="0.004372"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:20.939363" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:20.936118" elapsed="0.003327"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.936092" elapsed="0.003411"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:20.939552" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:58:20.939838" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:20.939898" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:20.915755" elapsed="0.024174"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:20.943481" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:20.940765" elapsed="0.002783"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.940740" elapsed="0.002837"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.944362" 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-07-28T01:58:20.943826" elapsed="0.000572"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.945229" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:20.944687" elapsed="0.000568"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:20.945307" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:20.945505" 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-07-28T01:58:20.940274" elapsed="0.005259"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:20.945735" elapsed="0.000400"/>
</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-07-28T01:58:20.915105" elapsed="0.031095"/>
</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-07-28T01:58:20.905493" elapsed="0.040756"/>
</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-07-28T01:58:20.958886" 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-07-28T01:58:20.959057" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.958741" elapsed="0.000345"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:20.959729" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b038d0d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:20.959280" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.960241" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:20.959950" elapsed="0.000318"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.960823" 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-07-28T01:58:20.960538" elapsed="0.000312"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:20.961328" 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-07-28T01:58:20.961046" elapsed="0.000309"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:20.962287" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.961569" elapsed="0.000749"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.962912" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.962557" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.963498" 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-07-28T01:58:20.963148" elapsed="0.000393"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.964074" 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-07-28T01:58:20.963736" elapsed="0.000379"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.964653" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:20.964307" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.965221" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:20.964889" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.965854" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b038d0d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:20.965504" 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-07-28T01:58:20.958336" elapsed="0.007617"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.966596" 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-07-28T01:58:20.966149" elapsed="0.000479"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.967106" level="INFO">&lt;?xml version="1.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-07-28T01:58:20.966822" elapsed="0.000349"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.976326" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:20.976016" elapsed="0.000337"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:20.988375" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:20.989521" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:20.989829" 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-07-28T01:58:20.976527" elapsed="0.013361"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.990973" 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-07-28T01:58:20.990328" elapsed="0.000749"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:20.997515" 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-07-28T01:58:20.991522" elapsed="0.006122"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:58:21.001014" elapsed="0.000036"/>
</return>
<status status="PASS" start="2026-07-28T01:58:20.997822" elapsed="0.003269"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:20.997772" elapsed="0.003345"/>
</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-07-28T01:58:21.001322" 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-07-28T01:58:21.001609" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:21.001415" elapsed="0.000248"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:21.001399" elapsed="0.000286"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:21.001718" elapsed="0.000014"/>
</return>
<msg time="2026-07-28T01:58:21.003655" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:58:21.003701" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:20.975657" elapsed="0.028068"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:21.006205" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:21.004333" elapsed="0.001918"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:21.004315" elapsed="0.001958"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.006920" 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-07-28T01:58:21.006486" elapsed="0.000460"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.007531" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:21.007150" elapsed="0.000414"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:21.007626" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:58:21.007809" 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-07-28T01:58:21.003987" 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-07-28T01:58:21.008034" 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-07-28T01:58:20.975051" elapsed="0.033464"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.018064" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:21.017698" elapsed="0.000398"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:21.028348" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:21.028568" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:21.028682" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:21.018295" elapsed="0.010413"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.029212" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:21.028937" elapsed="0.000322"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.032775" 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-07-28T01:58:21.029440" elapsed="0.003588"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:21.036323" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:21.033203" elapsed="0.003191"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:21.033155" elapsed="0.003271"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:21.040692" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:21.040738" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:21.036716" elapsed="0.004045"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:21.042907" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:21.040841" elapsed="0.002123"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:21.040822" elapsed="0.002166"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:21.043021" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:58:21.043230" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:21.043274" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:21.017179" elapsed="0.026117"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:21.045890" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:21.043920" elapsed="0.002015"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:21.043902" elapsed="0.002055"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.046617" 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-07-28T01:58:21.046150" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:21.047205" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:21.046849" elapsed="0.000383"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:21.047281" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:21.047485" 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-07-28T01:58:21.043576" elapsed="0.003951"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:21.047807" elapsed="0.000559"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:21.016392" elapsed="0.032080"/>
</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-07-28T01:58:20.954449" elapsed="0.094111"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.049367" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:21.048820" elapsed="5.000915"/>
</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-07-28T01:58:26.075095" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.076019" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:26.076334" level="INFO">${resp} = None</msg>
<msg time="2026-07-28T01:58:26.076409" level="FAIL">Url: http://10.30.170.50: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-07-28T01:58:26.064769" elapsed="0.012360">Url: http://10.30.170.50: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-07-28T01:58:26.081558" 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-07-28T01:58:26.077569" elapsed="0.004097">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-07-28T01:58:26.063831" elapsed="0.018051">Several failures occurred:

1) Url: http://10.30.170.50: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-07-28T01:58:26.050622" elapsed="0.031504"/>
</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-07-28T01:58:20.668044" elapsed="5.414167"/>
</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-07-28T01:58:20.667276" elapsed="5.415003"/>
</kw>
<var name="${i}">0</var>
<status status="PASS" start="2026-07-28T01:58:20.666911" elapsed="5.415479"/>
</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-07-28T01:58:26.090665" 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-07-28T01:58:26.090946" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.090359" elapsed="0.000640"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:26.092169" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3735f80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:26.091282" elapsed="0.000932"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.093068" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:26.092531" elapsed="0.000576"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.093942" 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-07-28T01:58:26.093448" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.094854" 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-07-28T01:58:26.094313" elapsed="0.000588"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.096551" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.095239" elapsed="0.001364"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.097273" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.096916" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.097935" 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-07-28T01:58:26.097581" elapsed="0.000440"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.098641" 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-07-28T01:58:26.098238" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.099307" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.098924" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.099970" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.099581" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.100738" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3735f80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.100320" 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-07-28T01:58:26.089759" elapsed="0.011132"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.110620" 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-07-28T01:58:26.110170" elapsed="0.000656"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.127115" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:26.127271" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:26.127620" 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-07-28T01:58:26.111063" elapsed="0.016624"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.134561" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.128369" elapsed="0.006301"/>
</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-07-28T01:58:26.109447" elapsed="0.025459"/>
</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-07-28T01:58:26.149094" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.148707" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.158189" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.158565" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:26.158693" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:26.149293" elapsed="0.009426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.159282" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.158971" elapsed="0.000362"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.164600" 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-07-28T01:58:26.159539" elapsed="0.005393"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.170872" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.165114" elapsed="0.005877"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.165063" elapsed="0.005981"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.176290" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:26.176385" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:26.171518" elapsed="0.004895"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:26.179024" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.176510" elapsed="0.002573"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.176489" elapsed="0.002619"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:26.179141" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:58:26.179390" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:26.179437" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:26.148196" elapsed="0.031279"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.182258" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.180199" elapsed="0.002105"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.180178" elapsed="0.002148"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.183014" 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-07-28T01:58:26.182549" elapsed="0.000493"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.183725" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.183291" elapsed="0.000461"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.183807" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:58:26.184005" 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-07-28T01:58:26.179776" elapsed="0.004289"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:26.184329" elapsed="0.000475"/>
</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-07-28T01:58:26.147414" elapsed="0.037462"/>
</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-07-28T01:58:26.135401" elapsed="0.049528"/>
</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-07-28T01:58:26.199330" 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-07-28T01:58:26.199573" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.199177" elapsed="0.000428"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:26.200375" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3737650&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:26.199854" elapsed="0.000550"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.201001" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:26.200656" elapsed="0.000374"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.201579" 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-07-28T01:58:26.201239" elapsed="0.000372"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.202143" 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-07-28T01:58:26.201849" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.203245" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.202421" elapsed="0.000855"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.203957" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.203545" elapsed="0.000490"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.204688" 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-07-28T01:58:26.204275" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.205421" 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-07-28T01:58:26.205023" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.206072" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.205680" elapsed="0.000479"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.206782" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.206371" elapsed="0.000498"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.207486" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3737650&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.207072" elapsed="0.000460"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:26.198744" elapsed="0.008846"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.208323" 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-07-28T01:58:26.207836" elapsed="0.000518"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.208871" 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-07-28T01:58:26.208600" 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-07-28T01:58:26.219079" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.218715" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.229856" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.230267" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:26.230504" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:26.219271" elapsed="0.011272"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.231332" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.230895" elapsed="0.000521"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.235582" 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-07-28T01:58:26.231700" elapsed="0.004121"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.238669" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.236044" elapsed="0.002678"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.235953" elapsed="0.002833"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.246124" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:26.246251" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:26.238983" elapsed="0.007325"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:26.251612" elapsed="0.000058"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.246515" elapsed="0.005240"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.246441" elapsed="0.005374"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:26.251919" elapsed="0.000128"/>
</return>
<msg time="2026-07-28T01:58:26.252532" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:26.252646" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:26.218277" elapsed="0.034425"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.256479" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.253316" elapsed="0.003213"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.253297" elapsed="0.003255"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.257194" 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-07-28T01:58:26.256760" elapsed="0.000469"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.257838" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.257439" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.257918" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:26.258100" 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-07-28T01:58:26.252966" elapsed="0.005160"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:26.258336" elapsed="0.000436"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:26.217570" elapsed="0.041272"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.268124" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.267781" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.277784" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.278138" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:26.278313" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:26.268319" elapsed="0.010030"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.279038" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.278654" elapsed="0.000450"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.282865" 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-07-28T01:58:26.279376" elapsed="0.003641"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.286212" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.283128" elapsed="0.003153"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.283100" elapsed="0.003212"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.290959" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:26.291007" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:26.286607" elapsed="0.004423"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:26.293353" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.291108" elapsed="0.002304"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.291089" elapsed="0.002347"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:26.293492" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:58:26.293714" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:26.293759" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:26.267326" elapsed="0.026456"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.296348" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.294395" elapsed="0.002000"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.294376" elapsed="0.002049"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.297073" 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-07-28T01:58:26.296637" elapsed="0.000464"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.297696" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.297305" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.297773" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:26.297967" 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-07-28T01:58:26.294036" elapsed="0.003958"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:26.298196" 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-07-28T01:58:26.266652" elapsed="0.032048"/>
</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-07-28T01:58:26.194277" elapsed="0.104485"/>
</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-07-28T01:58:26.185139" elapsed="0.113680"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.317207" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.317253" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:26.317347" 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-07-28T01:58:26.306973" elapsed="0.010408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.322744" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.317612" elapsed="0.005236"/>
</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-07-28T01:58:26.306543" elapsed="0.016457"/>
</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-07-28T01:58:26.335778" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.335446" elapsed="0.000359"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.343764" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.344020" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:26.344124" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:26.335984" elapsed="0.008166"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.344648" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.344361" elapsed="0.000347"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.347251" 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-07-28T01:58:26.344896" elapsed="0.002409"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.350060" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.347389" elapsed="0.002747"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.347367" elapsed="0.002802"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.354893" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:26.354970" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:26.350444" elapsed="0.004560"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:26.358387" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.355113" elapsed="0.003381"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.355087" elapsed="0.003452"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:26.358588" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:58:26.358865" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:26.358941" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:26.335014" elapsed="0.023961"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.362042" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.359837" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.359811" elapsed="0.002298"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.362750" 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-07-28T01:58:26.362315" elapsed="0.000463"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.363364" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.362994" elapsed="0.000397"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.363441" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:58:26.363650" 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-07-28T01:58:26.359320" elapsed="0.004362"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:26.363884" elapsed="0.000421"/>
</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-07-28T01:58:26.334351" elapsed="0.030017"/>
</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-07-28T01:58:26.323405" elapsed="0.041011"/>
</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-07-28T01:58:26.377023" 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-07-28T01:58:26.377188" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.376877" elapsed="0.000343"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:26.377875" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38d8c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:26.377416" elapsed="0.000487"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.378401" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:26.378100" elapsed="0.000327"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.378979" 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-07-28T01:58:26.378693" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:26.379510" 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-07-28T01:58:26.379214" elapsed="0.000323"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.380498" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.379742" elapsed="0.000789"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.381099" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.380734" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.381712" 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-07-28T01:58:26.381351" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.382317" 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-07-28T01:58:26.381961" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.382927" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:26.382585" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.383555" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:26.383184" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.384206" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38d8c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:26.383799" elapsed="0.000452"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:26.376494" elapsed="0.007815"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.384970" 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-07-28T01:58:26.384549" elapsed="0.000454"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.385469" level="INFO">&lt;?xml version="1.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-07-28T01:58:26.385196" 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-07-28T01:58:26.394916" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.394591" elapsed="0.000353"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.404266" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.405078" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:26.405423" 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-07-28T01:58:26.395119" elapsed="0.010421"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.406756" 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-07-28T01:58:26.406058" elapsed="0.000814"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.413763" 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-07-28T01:58:26.407337" elapsed="0.006547"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:58:26.417777" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:58:26.414068" elapsed="0.003781"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.414013" elapsed="0.003861"/>
</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-07-28T01:58:26.418061" 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-07-28T01:58:26.418338" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.418152" elapsed="0.000240"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:26.418136" elapsed="0.000279"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.418447" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:26.420467" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:58:26.420518" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:26.394208" elapsed="0.026333"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.423076" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.421146" elapsed="0.001977"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.421123" elapsed="0.002022"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.423782" 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-07-28T01:58:26.423337" elapsed="0.000471"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.424424" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.424045" elapsed="0.000406"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.424521" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:26.424707" 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-07-28T01:58:26.420797" 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-07-28T01:58:26.424950" 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-07-28T01:58:26.393602" elapsed="0.031827"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.434733" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:26.434394" elapsed="0.000366"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:26.441052" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:26.441209" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:26.441308" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:26.434921" elapsed="0.006412"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.441845" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:26.441566" elapsed="0.000327"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.444694" 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-07-28T01:58:26.442075" elapsed="0.002721"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.447044" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.444870" elapsed="0.002223"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.444850" elapsed="0.002266"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:26.451200" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:26.451269" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:26.447309" elapsed="0.003993"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:26.454367" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:26.451413" elapsed="0.003035"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.451386" elapsed="0.003118"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:26.454552" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:58:26.454829" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:26.454905" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:26.433965" elapsed="0.020974"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:26.458519" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:26.455777" elapsed="0.002808"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:26.455751" elapsed="0.002865"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.459506" 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-07-28T01:58:26.458899" elapsed="0.000648"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:26.460421" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:26.459847" elapsed="0.000632"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:26.460555" elapsed="0.000055"/>
</return>
<msg time="2026-07-28T01:58:26.460825" 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-07-28T01:58:26.455271" elapsed="0.005580"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:26.461054" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:26.433282" elapsed="0.028254"/>
</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-07-28T01:58:26.372538" elapsed="0.089056"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.462254" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:26.461799" elapsed="5.000753"/>
</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-07-28T01:58:31.485031" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.485766" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:31.486128" level="INFO">${resp} = None</msg>
<msg time="2026-07-28T01:58:31.486232" level="FAIL">Url: http://10.30.170.50: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-07-28T01:58:31.476610" elapsed="0.010634">Url: http://10.30.170.50: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-07-28T01:58:31.494074" 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-07-28T01:58:31.487866" elapsed="0.006305">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-07-28T01:58:31.475896" elapsed="0.018685">Several failures occurred:

1) Url: http://10.30.170.50: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-07-28T01:58:31.463247" elapsed="0.031651"/>
</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-07-28T01:58:26.083591" elapsed="5.411450"/>
</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-07-28T01:58:26.082907" elapsed="5.412266"/>
</kw>
<var name="${i}">1</var>
<status status="PASS" start="2026-07-28T01:58:26.082562" elapsed="5.412694"/>
</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-07-28T01:58:31.502025" 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-07-28T01:58:31.502211" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.501858" elapsed="0.000382"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:31.502940" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a356a660&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:31.502470" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.503501" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:31.503180" elapsed="0.000349"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.504033" 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-07-28T01:58:31.503746" elapsed="0.000315"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.504635" 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-07-28T01:58:31.504310" elapsed="0.000352"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.505706" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.504863" elapsed="0.000879"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.506318" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.505954" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.506935" 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-07-28T01:58:31.506593" elapsed="0.000389"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.507529" 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-07-28T01:58:31.507178" elapsed="0.000394"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.508112" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.507782" elapsed="0.000382"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.508732" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.508361" elapsed="0.000420"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.509331" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a356a660&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.508986" 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-07-28T01:58:31.501413" elapsed="0.008023"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.517990" 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-07-28T01:58:31.517713" elapsed="0.000396"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.534322" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:31.534587" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:31.534870" 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-07-28T01:58:31.518272" elapsed="0.016664"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.541673" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.535583" elapsed="0.006206"/>
</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-07-28T01:58:31.517218" elapsed="0.024752"/>
</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-07-28T01:58:31.554353" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.554011" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.565754" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.566418" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:31.566757" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:31.554580" elapsed="0.012241"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.568034" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.567349" elapsed="0.000792"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.574078" 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-07-28T01:58:31.568601" elapsed="0.005615"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.576508" elapsed="0.000018"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.574313" elapsed="0.002251"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.574284" elapsed="0.002305"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.580526" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:31.580587" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:31.576784" elapsed="0.003829"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:31.583006" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.580696" elapsed="0.002369"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.580676" elapsed="0.002415"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:31.583126" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:58:31.583347" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:31.583392" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:31.553355" elapsed="0.030061"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.586044" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.584093" elapsed="0.001998"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.584073" elapsed="0.002045"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.586798" 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-07-28T01:58:31.586328" elapsed="0.000499"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.587422" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.587049" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.587530" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:58:31.587726" 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-07-28T01:58:31.583719" elapsed="0.004033"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.587972" elapsed="0.000428"/>
</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-07-28T01:58:31.552633" elapsed="0.035851"/>
</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-07-28T01:58:31.542432" elapsed="0.046113"/>
</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-07-28T01:58:31.601772" 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-07-28T01:58:31.601952" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.601609" elapsed="0.000374"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:31.602653" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3737420&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:31.602190" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.603183" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:31.602892" elapsed="0.000317"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.603724" 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-07-28T01:58:31.603418" elapsed="0.000332"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.604230" 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-07-28T01:58:31.603942" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.605218" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.604489" elapsed="0.000762"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.605929" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.605544" elapsed="0.000432"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.606539" 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-07-28T01:58:31.606182" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.607203" 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-07-28T01:58:31.606851" elapsed="0.000395"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.607812" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.607474" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.608428" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.608074" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.609066" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3737420&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.608708" 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-07-28T01:58:31.601200" elapsed="0.007972"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.609849" 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-07-28T01:58:31.609370" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.610339" 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-07-28T01:58:31.610087" 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-07-28T01:58:31.619947" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.619623" elapsed="0.000356"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.629231" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.629571" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:31.629686" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:31.620148" elapsed="0.009564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.630683" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.630075" elapsed="0.000712"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.636557" 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-07-28T01:58:31.631192" elapsed="0.005585"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.641818" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.636951" elapsed="0.004920"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.636904" elapsed="0.004991"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.645545" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:31.645592" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:31.642081" elapsed="0.003535"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:31.647709" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.645694" elapsed="0.002074"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.645674" elapsed="0.002120"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:31.647841" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:58:31.648052" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:31.648098" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:31.619186" elapsed="0.028936"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.650817" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.648717" elapsed="0.002149"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.648699" elapsed="0.002190"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.651515" 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-07-28T01:58:31.651082" elapsed="0.000461"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.652122" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.651748" elapsed="0.000399"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.652199" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:31.652383" 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-07-28T01:58:31.648361" elapsed="0.004047"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.652628" 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-07-28T01:58:31.618555" elapsed="0.034558"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.662853" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.662496" elapsed="0.000385"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.670863" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.671145" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:31.671269" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:31.663074" elapsed="0.008221"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.671813" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.671516" elapsed="0.000343"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.674660" 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-07-28T01:58:31.672075" elapsed="0.002687"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.677115" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.674873" elapsed="0.002328"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.674819" elapsed="0.002405"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.681246" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:31.681292" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:31.677422" 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-07-28T01:58:31.683770" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.681421" elapsed="0.002406"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.681401" elapsed="0.002450"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:31.683884" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:31.684118" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:31.684161" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:31.662062" elapsed="0.022121"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.686833" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.684839" elapsed="0.002040"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.684820" elapsed="0.002081"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.687618" 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-07-28T01:58:31.687124" elapsed="0.000521"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.688244" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.687852" elapsed="0.000418"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.688319" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:31.688560" 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-07-28T01:58:31.684467" elapsed="0.004118"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.688783" 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-07-28T01:58:31.661310" elapsed="0.027959"/>
</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-07-28T01:58:31.597204" elapsed="0.092172"/>
</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-07-28T01:58:31.588734" elapsed="0.100699"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.706790" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.706835" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:31.706924" 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-07-28T01:58:31.697815" elapsed="0.009135"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.709572" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.707184" elapsed="0.002432"/>
</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-07-28T01:58:31.697317" elapsed="0.012355"/>
</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-07-28T01:58:31.719640" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.719276" elapsed="0.000391"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.725910" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.726146" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:31.726247" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:31.719830" elapsed="0.006443"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.726829" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.726531" elapsed="0.000345"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.729609" 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-07-28T01:58:31.727092" elapsed="0.002572"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.732008" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.729734" elapsed="0.002323"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.729715" elapsed="0.002365"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.735680" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:31.735726" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:31.732261" elapsed="0.003489"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:31.738009" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.735863" elapsed="0.002239"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.735843" elapsed="0.002284"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:31.738161" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:31.738357" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:31.738400" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:31.718845" elapsed="0.019629"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.741079" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.739086" elapsed="0.002039"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.739067" elapsed="0.002079"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.741843" 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-07-28T01:58:31.741381" elapsed="0.000490"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.742522" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.742111" elapsed="0.000437"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.742598" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:31.742818" 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-07-28T01:58:31.738714" elapsed="0.004131"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.743047" elapsed="0.000444"/>
</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-07-28T01:58:31.718161" elapsed="0.025430"/>
</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-07-28T01:58:31.709883" elapsed="0.033756"/>
</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-07-28T01:58:31.756714" 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-07-28T01:58:31.756893" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.756570" elapsed="0.000353"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:31.757618" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38c81d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:31.757116" elapsed="0.000532"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.758164" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:31.757879" elapsed="0.000310"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.758800" 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-07-28T01:58:31.758481" elapsed="0.000345"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:31.759337" 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-07-28T01:58:31.759019" elapsed="0.000344"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.761565" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.759608" elapsed="0.001989"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.762191" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.761799" elapsed="0.000435"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.762821" 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-07-28T01:58:31.762429" elapsed="0.000434"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.763439" 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-07-28T01:58:31.763056" elapsed="0.000441"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.764099" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:31.763726" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.764772" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:31.764341" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.765418" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38c81d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:31.765015" elapsed="0.000469"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:31.756149" elapsed="0.009393"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.766166" 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-07-28T01:58:31.765735" elapsed="0.000462"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.766712" level="INFO">&lt;?xml version="1.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-07-28T01:58:31.766423" 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-07-28T01:58:31.776339" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.776035" elapsed="0.000330"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.783685" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.784334" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:31.784542" 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-07-28T01:58:31.776573" elapsed="0.007997"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.785072" 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-07-28T01:58:31.784767" elapsed="0.000350"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.788215" 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-07-28T01:58:31.785348" 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-07-28T01:58:31.791104" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:58:31.788376" elapsed="0.002824"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.788355" elapsed="0.002880"/>
</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-07-28T01:58:31.791559" 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-07-28T01:58:31.791986" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.791691" elapsed="0.000372"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:31.791668" elapsed="0.000427"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.792140" elapsed="0.000019"/>
</return>
<msg time="2026-07-28T01:58:31.795088" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:58:31.795152" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:31.775639" 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-07-28T01:58:31.799003" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.796148" elapsed="0.002920"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.796123" elapsed="0.002976"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.800090" 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-07-28T01:58:31.799404" elapsed="0.000724"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.801037" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.800474" elapsed="0.000646"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.801193" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:58:31.801569" 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-07-28T01:58:31.795629" elapsed="0.005979"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.801867" elapsed="0.000430"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:31.774971" elapsed="0.027427"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.812066" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:31.811719" elapsed="0.000374"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:31.819915" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:31.820072" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:31.820172" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:31.812251" elapsed="0.007946"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.820674" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:31.820394" elapsed="0.000326"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.825531" 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-07-28T01:58:31.820900" elapsed="0.004833"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.830808" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.825894" elapsed="0.005022"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.825851" elapsed="0.005115"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:31.835776" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:31.835828" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:31.831370" elapsed="0.004481"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:31.837973" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:31.835929" elapsed="0.002101"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.835911" elapsed="0.002143"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:31.838087" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:31.838283" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:31.838327" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:31.811282" elapsed="0.027068"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:31.840801" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:31.838938" elapsed="0.001908"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:31.838920" elapsed="0.001948"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.841504" 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-07-28T01:58:31.841057" elapsed="0.000475"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:31.842096" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:31.841737" elapsed="0.000386"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:31.842174" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:31.842357" 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-07-28T01:58:31.838601" elapsed="0.003781"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:31.842596" 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-07-28T01:58:31.810564" elapsed="0.032490"/>
</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-07-28T01:58:31.752053" elapsed="0.091060"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.843739" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:31.843297" elapsed="5.000671"/>
</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-07-28T01:58:36.867696" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:36.868409" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:36.868597" level="INFO">${resp} = None</msg>
<msg time="2026-07-28T01:58:36.868641" level="FAIL">Url: http://10.30.170.50: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-07-28T01:58:36.859176" elapsed="0.010062">Url: http://10.30.170.50: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-07-28T01:58:36.872689" 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-07-28T01:58:36.869552" elapsed="0.003186">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-07-28T01:58:36.858492" elapsed="0.014478">Several failures occurred:

1) Url: http://10.30.170.50: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-07-28T01:58:36.844735" elapsed="0.028435"/>
</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-07-28T01:58:31.497104" elapsed="5.376148"/>
</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-07-28T01:58:31.496071" elapsed="5.377293"/>
</kw>
<var name="${i}">2</var>
<status status="PASS" start="2026-07-28T01:58:31.495535" elapsed="5.377877"/>
</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-07-28T01:58:36.881385" 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-07-28T01:58:36.881590" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:36.881231" elapsed="0.000390"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:36.882331" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38da930&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:36.881852" elapsed="0.000509"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.882923" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:36.882608" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.883528" 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-07-28T01:58:36.883192" elapsed="0.000362"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.884066" 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-07-28T01:58:36.883748" elapsed="0.000343"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:36.885116" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:36.884286" elapsed="0.000861"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.885790" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:36.885387" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.886408" 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-07-28T01:58:36.886080" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.887050" 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-07-28T01:58:36.886702" elapsed="0.000390"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.887705" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:36.887328" elapsed="0.000424"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.888340" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:36.887981" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.888989" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38da930&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:36.888609" 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-07-28T01:58:36.880486" elapsed="0.008602"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.898162" 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-07-28T01:58:36.897863" elapsed="0.000405"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:36.912344" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:36.912541" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:36.912831" 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-07-28T01:58:36.898431" elapsed="0.014459"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.919326" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:36.913428" elapsed="0.005999"/>
</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-07-28T01:58:36.897361" elapsed="0.022303"/>
</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-07-28T01:58:36.932253" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:36.931806" elapsed="0.000485"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:36.940373" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:36.940790" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:36.940952" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:36.932541" elapsed="0.008458"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.941687" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:36.941284" elapsed="0.000470"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.945730" 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-07-28T01:58:36.942013" elapsed="0.003877"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:36.949130" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:36.946006" elapsed="0.003212"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:36.945974" elapsed="0.003278"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:36.954178" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:36.954227" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:36.949538" elapsed="0.004712"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:36.956678" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:36.954331" elapsed="0.002410"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:36.954311" elapsed="0.002458"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:36.956805" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:58:36.957015" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:36.957060" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:36.931336" elapsed="0.025746"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:36.959685" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:36.957739" elapsed="0.001992"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:36.957718" elapsed="0.002041"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.960430" 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-07-28T01:58:36.959977" elapsed="0.000497"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.961064" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:36.960683" elapsed="0.000407"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:36.961141" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:58:36.961339" 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-07-28T01:58:36.957342" elapsed="0.004023"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:36.961596" elapsed="0.000422"/>
</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-07-28T01:58:36.930597" elapsed="0.031487"/>
</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-07-28T01:58:36.920142" elapsed="0.041993"/>
</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-07-28T01:58:36.977909" 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-07-28T01:58:36.978140" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:36.977648" elapsed="0.000536"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:36.979252" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5da0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:36.978562" elapsed="0.000786"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.980168" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:36.979651" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.981035" 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-07-28T01:58:36.980572" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:36.981878" 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-07-28T01:58:36.981405" elapsed="0.000510"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:36.983407" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:36.982240" elapsed="0.001277"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.984311" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:36.983859" elapsed="0.000494"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.985025" 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-07-28T01:58:36.984562" elapsed="0.000515"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.985892" 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-07-28T01:58:36.985490" elapsed="0.000448"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.986529" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:36.986170" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.987225" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:36.986835" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.987867" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b03a5da0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:36.987518" 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-07-28T01:58:36.977023" elapsed="0.010944"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.988663" 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-07-28T01:58:36.988202" elapsed="0.000493"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:36.989183" 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-07-28T01:58:36.988888" 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-07-28T01:58:36.999470" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:36.999095" elapsed="0.000406"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.008306" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.008622" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:37.008758" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:36.999666" elapsed="0.009122"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.009293" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:37.009029" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.012291" 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-07-28T01:58:37.009578" elapsed="0.002854"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.015923" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.012615" elapsed="0.003385"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.012532" elapsed="0.003551"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:37.021736" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:37.021801" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:37.016383" elapsed="0.005450"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:37.024758" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:37.021983" elapsed="0.002868"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.021955" elapsed="0.002922"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:37.024912" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:58:37.025155" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:37.025202" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:36.998671" elapsed="0.026554"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.028265" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.025855" elapsed="0.002459"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.025837" elapsed="0.002500"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.029040" 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-07-28T01:58:37.028547" elapsed="0.000520"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.029679" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:37.029303" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:37.029808" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:58:37.029997" 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-07-28T01:58:37.025478" elapsed="0.004546"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:37.030265" elapsed="0.000583"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:36.997944" elapsed="0.032990"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.040924" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:37.040615" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.046821" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.047110" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:37.047237" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:37.041150" elapsed="0.006113"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.047824" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:37.047509" elapsed="0.000363"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.050699" 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-07-28T01:58:37.048062" 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-07-28T01:58:37.053257" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.050951" elapsed="0.002357"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.050929" elapsed="0.002403"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:37.057944" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:37.058011" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:37.053534" elapsed="0.004510"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:37.061417" elapsed="0.000053"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:37.058162" elapsed="0.003362"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.058128" elapsed="0.003442"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:37.061622" elapsed="0.000042"/>
</return>
<msg time="2026-07-28T01:58:37.061912" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:37.061985" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:37.040097" elapsed="0.021921"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.066722" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.062916" elapsed="0.004001"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.062889" elapsed="0.004080"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.068244" 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-07-28T01:58:37.067425" elapsed="0.000854"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.068879" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:37.068501" elapsed="0.000405"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:37.068957" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:37.069140" 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-07-28T01:58:37.062367" elapsed="0.006804"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:37.069378" 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-07-28T01:58:37.039395" elapsed="0.030482"/>
</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-07-28T01:58:36.971387" elapsed="0.098562"/>
</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-07-28T01:58:36.962307" elapsed="0.107701"/>
</kw>
<kw name="Delete Flow Via Restconf" owner="FlowLib">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.087333" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.087380" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:37.087495" 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-07-28T01:58:37.078036" elapsed="0.009488"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.092734" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:37.087738" elapsed="0.005108"/>
</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-07-28T01:58:37.077598" elapsed="0.015379"/>
</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-07-28T01:58:37.106803" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:37.106438" elapsed="0.000393"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.114330" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.114587" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:37.114692" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:37.106990" elapsed="0.007728"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.115256" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:37.114991" elapsed="0.000311"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.117890" 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-07-28T01:58:37.115512" elapsed="0.002432"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.120774" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.118024" elapsed="0.002820"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.117998" elapsed="0.002879"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:37.125805" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:37.125875" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:37.121157" elapsed="0.004752"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:37.128435" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:37.126020" elapsed="0.002498"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.125994" elapsed="0.002549"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:37.128577" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:37.128776" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:37.128820" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:37.105991" elapsed="0.022851"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.131410" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.129439" elapsed="0.002032"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.129421" elapsed="0.002074"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.132106" 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-07-28T01:58:37.131688" elapsed="0.000446"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.132727" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:37.132338" elapsed="0.000416"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:37.132803" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:37.132996" 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-07-28T01:58:37.129087" elapsed="0.003936"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:37.133222" elapsed="0.000424"/>
</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-07-28T01:58:37.105322" elapsed="0.028389"/>
</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-07-28T01:58:37.093384" elapsed="0.040382"/>
</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-07-28T01:58:37.146472" 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-07-28T01:58:37.146659" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:37.146289" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:37.147447" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38ca750&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:37.146945" elapsed="0.000554"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:37.148009" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:37.147700" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:37.148664" 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-07-28T01:58:37.148349" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:37.149184" 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-07-28T01:58:37.148890" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:37.150409" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:37.149409" elapsed="0.001036"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.151106" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:37.150670" elapsed="0.000480"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.151727" 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-07-28T01:58:37.151361" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.152359" 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-07-28T01:58:37.151995" elapsed="0.000406"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.152972" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:37.152624" elapsed="0.000396"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.153586" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:37.153216" elapsed="0.000417"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.154190" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38ca750&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:37.153839" 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-07-28T01:58:37.145901" elapsed="0.008390"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.155009" 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-07-28T01:58:37.154541" elapsed="0.000503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.155521" level="INFO">&lt;?xml version="1.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-07-28T01:58:37.155246" 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-07-28T01:58:37.164854" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:37.164538" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.172836" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.173416" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:37.173597" 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-07-28T01:58:37.165061" elapsed="0.008565"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.174116" 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-07-28T01:58:37.173827" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.177163" 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-07-28T01:58:37.174348" elapsed="0.002868"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="PASS" start="2026-07-28T01:58:37.179933" elapsed="0.000049"/>
</return>
<status status="PASS" start="2026-07-28T01:58:37.177309" elapsed="0.002729"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.177282" elapsed="0.002793"/>
</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-07-28T01:58:37.180389" 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-07-28T01:58:37.180833" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:37.180590" elapsed="0.000316"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:37.180563" elapsed="0.000425"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.181034" elapsed="0.000021"/>
</return>
<msg time="2026-07-28T01:58:37.184014" level="INFO">${presence_flow} = False</msg>
<msg time="2026-07-28T01:58:37.184076" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:37.164147" elapsed="0.019961"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.188021" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.185132" elapsed="0.002953"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.185107" elapsed="0.003008"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.189068" 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-07-28T01:58:37.188428" elapsed="0.000677"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.190059" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:37.189443" elapsed="0.000652"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:37.190166" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:58:37.190487" 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-07-28T01:58:37.184609" elapsed="0.005915"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:37.191005" elapsed="0.000682"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:37.163528" elapsed="0.028249"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.202394" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:37.202046" elapsed="0.000375"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:37.211758" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:37.211913" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:37.212015" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:37.202630" elapsed="0.009410"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.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-07-28T01:58:37.212280" elapsed="0.000320"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.215667" 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-07-28T01:58:37.212779" elapsed="0.003016"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.219122" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.215895" elapsed="0.003296"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.215867" elapsed="0.003357"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:37.223974" level="INFO">${pres} = False</msg>
<msg time="2026-07-28T01:58:37.224020" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:37.219559" elapsed="0.004525"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:37.226337" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:37.224168" elapsed="0.002227"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.224148" elapsed="0.002271"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:37.226469" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:58:37.226785" level="INFO">${presence_table} = False</msg>
<msg time="2026-07-28T01:58:37.226840" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:37.201576" elapsed="0.025287"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:37.229386" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:37.227483" elapsed="0.001949"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:37.227446" elapsed="0.002023"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.230092" 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-07-28T01:58:37.229673" elapsed="0.000447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:37.230740" level="INFO">${msgp} = it is not present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:37.230325" elapsed="0.000449"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:37.230832" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:37.231055" 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-07-28T01:58:37.227118" elapsed="0.003972"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:37.231383" elapsed="0.000588"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:37.200874" elapsed="0.031187"/>
</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-07-28T01:58:37.141881" elapsed="0.090278"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.232982" level="INFO">Slept 5 seconds.</msg>
<arg>5</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:37.232423" elapsed="5.000855"/>
</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-07-28T01:58:42.256773" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:42.257929" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:42.258270" level="INFO">${resp} = None</msg>
<msg time="2026-07-28T01:58:42.258438" level="FAIL">Url: http://10.30.170.50: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-07-28T01:58:42.248076" elapsed="0.011511">Url: http://10.30.170.50: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-07-28T01:58:42.267166" 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-07-28T01:58:42.260231" elapsed="0.006981">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-07-28T01:58:42.247313" elapsed="0.020043">Several failures occurred:

1) Url: http://10.30.170.50: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-07-28T01:58:42.234038" elapsed="0.033508"/>
</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-07-28T01:58:36.874576" elapsed="5.393032"/>
</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-07-28T01:58:36.873887" elapsed="5.393770"/>
</kw>
<var name="${i}">3</var>
<status status="PASS" start="2026-07-28T01:58:36.873577" elapsed="5.394115"/>
</iter>
<var>${i}</var>
<value>${iteration}</value>
<status status="PASS" start="2026-07-28T01:58:20.666570" elapsed="21.601165"/>
</for>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.269218" 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-07-28T01:58:42.268728" elapsed="0.000517"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:58:42.269544" elapsed="0.000033"/>
</return>
<status status="PASS" start="2026-07-28T01:58:42.269332" elapsed="0.000278"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.269309" elapsed="0.000326"/>
</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-07-28T01:58:42.269860" elapsed="0.000023"/>
</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-07-28T01:58:42.270045" 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-07-28T01:58:42.270332" elapsed="0.000031"/>
</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-07-28T01:58:42.270560" elapsed="0.000023"/>
</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-07-28T01:58:42.270777" elapsed="0.000022"/>
</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-07-28T01:58:42.270946" 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-07-28T01:58:42.271111" elapsed="0.000021"/>
</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-07-28T01:58:42.271473" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:42.271247" elapsed="0.000285"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:58:42.271188" elapsed="0.000367"/>
</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-07-28T01:58:42.268279" elapsed="0.003371"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-07-28T01:58:20.665806" elapsed="21.605890"/>
</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-07-28T01:58:42.277973" 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-07-28T01:58:42.278143" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:42.277820" elapsed="0.000352"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:42.278898" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38479c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:42.278411" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.279509" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:42.279168" elapsed="0.000368"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.280045" 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-07-28T01:58:42.279728" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.280625" 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-07-28T01:58:42.280330" elapsed="0.000321"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:42.281612" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:42.280895" elapsed="0.000750"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.282282" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:42.281885" elapsed="0.000481"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.282989" 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-07-28T01:58:42.282581" elapsed="0.000460"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.283630" 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-07-28T01:58:42.283274" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.285763" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:42.283903" elapsed="0.001911"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.286448" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:42.286058" elapsed="0.000455"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.287145" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38479c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:42.286767" elapsed="0.000434"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:42.277312" elapsed="0.009951"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.296231" 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-07-28T01:58:42.295969" elapsed="0.000352"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:42.309913" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:42.310003" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:42.310194" 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-07-28T01:58:42.296527" elapsed="0.013707"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.314059" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:42.310534" elapsed="0.003593"/>
</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-07-28T01:58:42.295489" elapsed="0.018720"/>
</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-07-28T01:58:42.328340" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:42.327735" elapsed="0.000644"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:42.337067" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:42.337723" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:42.337969" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:42.328624" elapsed="0.009403"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.339157" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:42.338493" elapsed="0.000836"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.345949" 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-07-28T01:58:42.339835" elapsed="0.006316"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.350468" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.346333" elapsed="0.004192"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.346286" elapsed="0.004263"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:42.354282" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:42.354329" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:42.350773" elapsed="0.003580"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:42.356925" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:42.354431" elapsed="0.002553"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.354412" elapsed="0.002596"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:42.357041" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:58:42.357285" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:42.357329" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:42.327079" elapsed="0.030273"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.360175" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.358103" elapsed="0.002136"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.358082" elapsed="0.002180"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.360958" 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-07-28T01:58:42.360505" elapsed="0.000481"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.361637" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:42.361225" elapsed="0.000438"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:42.361715" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:42.361937" 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-07-28T01:58:42.357681" elapsed="0.004282"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:42.362199" elapsed="0.000455"/>
</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-07-28T01:58:42.326174" elapsed="0.036546"/>
</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-07-28T01:58:42.314516" elapsed="0.048253"/>
</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-07-28T01:58:42.376848" 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-07-28T01:58:42.377038" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:42.376704" elapsed="0.000364"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:42.377733" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06984f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:42.377261" elapsed="0.000501"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.378282" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:42.377956" elapsed="0.000352"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.378864" 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-07-28T01:58:42.378552" elapsed="0.000339"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:42.379391" 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-07-28T01:58:42.379083" elapsed="0.000334"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:42.380287" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:42.379625" elapsed="0.000695"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.381078" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:42.380722" elapsed="0.000400"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.381752" 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-07-28T01:58:42.381357" elapsed="0.000439"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.382376" 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-07-28T01:58:42.381992" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.383033" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:42.382662" elapsed="0.000419"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.383663" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:42.383276" elapsed="0.000468"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.384337" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868b06984f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:42.383940" elapsed="0.000441"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:42.376290" elapsed="0.008147"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.385117" 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-07-28T01:58:42.384685" elapsed="0.000463"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.385640" 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-07-28T01:58:42.385341" 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-07-28T01:58:42.395741" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:42.395367" elapsed="0.000404"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:42.404096" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:42.404595" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:42.404753" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:42.395931" elapsed="0.008858"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.405566" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:42.405124" elapsed="0.000515"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.409665" 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-07-28T01:58:42.405940" elapsed="0.003808"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.413164" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.409851" elapsed="0.003428"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.409823" elapsed="0.003493"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:42.418334" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:42.418400" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:42.413594" elapsed="0.004840"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:42.421609" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:42.418561" elapsed="0.003107"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.418533" elapsed="0.003159"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:42.421767" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:58:42.421976" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:42.422021" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:42.394914" elapsed="0.027129"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.424788" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.422726" elapsed="0.002110"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.422706" elapsed="0.002153"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.425554" 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-07-28T01:58:42.425094" elapsed="0.000528"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.426243" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:42.425836" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:42.426324" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:42.426607" 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-07-28T01:58:42.422323" 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-07-28T01:58:42.426841" elapsed="0.000454"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:42.394241" elapsed="0.033160"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.438074" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:42.437742" elapsed="0.000395"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:42.446544" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:42.446887" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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-07-28T01:58:42.447016" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:42.438308" elapsed="0.008771"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.447603" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:42.447288" elapsed="0.000365"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.450512" 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-07-28T01:58:42.447838" elapsed="0.002747"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.453619" elapsed="0.000073"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.450673" elapsed="0.003079"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.450650" elapsed="0.003137"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:42.459190" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:42.459303" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:42.454080" elapsed="0.005261"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:42.462298" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:42.459479" elapsed="0.002879"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.459427" elapsed="0.002955"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:42.462416" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:58:42.462674" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:42.462719" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:42.437219" elapsed="0.025523"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:42.465436" elapsed="0.000028"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:42.463398" elapsed="0.002099"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:42.463380" elapsed="0.002139"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.466183" 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-07-28T01:58:42.465715" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:42.466875" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:42.466474" elapsed="0.000428"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:42.466954" elapsed="0.000069"/>
</return>
<msg time="2026-07-28T01:58:42.467181" 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-07-28T01:58:42.463018" elapsed="0.004189"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:42.467412" elapsed="0.000454"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:58:42.436429" elapsed="0.031503"/>
</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-07-28T01:58:42.371950" elapsed="0.096081"/>
</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-07-28T01:58:42.362980" elapsed="0.105156"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.468823" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:42.468394" elapsed="8.000665"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:50.481890" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:50.481956" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:50.470787" elapsed="0.011246"/>
</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-07-28T01:58:50.469801" elapsed="0.012330"/>
</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-07-28T01:58:42.273184" elapsed="8.209032"/>
</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-07-28T01:58:42.272769" elapsed="8.209514"/>
</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-07-28T01:58:50.490404" 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-07-28T01:58:50.490690" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:50.490151" elapsed="0.000586"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:50.491685" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37374c0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:50.491026" elapsed="0.000701"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.492494" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:50.492019" elapsed="0.000517"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.493247" 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-07-28T01:58:50.492830" elapsed="0.000458"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.494023" 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-07-28T01:58:50.493602" elapsed="0.000462"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:50.495426" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:50.494343" elapsed="0.001148"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.496355" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:50.495797" elapsed="0.000630"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.497221" 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-07-28T01:58:50.496734" elapsed="0.000555"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.497927" 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-07-28T01:58:50.497575" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.498529" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:50.498171" elapsed="0.000412"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.499124" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:50.498781" elapsed="0.000392"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.499739" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37374c0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:50.499382" elapsed="0.000403"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:50.489584" elapsed="0.010259"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.508214" 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-07-28T01:58:50.507934" elapsed="0.000460"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:50.521554" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:50.521709" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:50.521969" 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-07-28T01:58:50.508598" elapsed="0.013434"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.528057" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:50.522528" elapsed="0.005636"/>
</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-07-28T01:58:50.507470" elapsed="0.020881"/>
</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-07-28T01:58:50.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-07-28T01:58:50.541922" elapsed="0.000383"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:50.552011" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:50.552483" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;677000000&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-07-28T01:58:50.552674" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:50.542498" elapsed="0.010222"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.553496" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:50.553101" elapsed="0.000473"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.557476" 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;677000000&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-07-28T01:58:50.553833" elapsed="0.003768"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.560847" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.557719" elapsed="0.003208"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.557686" elapsed="0.003274"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:50.565435" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:50.565499" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:50.561240" 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-07-28T01:58:50.567878" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:50.565607" elapsed="0.002331"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.565587" elapsed="0.002375"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:50.567996" elapsed="0.000036"/>
</return>
<msg time="2026-07-28T01:58:50.568216" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:50.568283" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:50.541430" elapsed="0.026880"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.570893" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.568948" elapsed="0.001992"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.568925" elapsed="0.002039"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.571622" 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-07-28T01:58:50.571160" elapsed="0.000495"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.572238" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:50.571862" elapsed="0.000433"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:50.572348" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:50.572568" 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-07-28T01:58:50.568581" elapsed="0.004016"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:50.572803" elapsed="0.000419"/>
</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-07-28T01:58:50.540395" elapsed="0.032893"/>
</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-07-28T01:58:50.528808" elapsed="0.044533"/>
</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-07-28T01:58:50.586637" 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-07-28T01:58:50.586848" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:50.586474" elapsed="0.000414"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:50.587589" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38da110&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:50.587113" elapsed="0.000507"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.588120" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:50.587817" elapsed="0.000330"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.588686" 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-07-28T01:58:50.588381" elapsed="0.000334"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:50.589211" 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-07-28T01:58:50.588927" elapsed="0.000310"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:50.590194" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:50.589443" elapsed="0.000783"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.590834" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:50.590435" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.591440" 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-07-28T01:58:50.591084" elapsed="0.000418"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.592058" 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-07-28T01:58:50.591701" elapsed="0.000399"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.592699" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:50.592333" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.593374" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:50.592979" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.594071" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38da110&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:50.593679" elapsed="0.000443"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:50.586087" elapsed="0.008094"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.594872" 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-07-28T01:58:50.594408" elapsed="0.000496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.595360" 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-07-28T01:58:50.595100" 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-07-28T01:58:50.604872" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:50.604543" elapsed="0.000357"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:50.613119" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:50.613397" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:50.613533" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:50.605059" elapsed="0.008501"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.614032" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:50.613771" elapsed="0.000318"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.616793" 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-07-28T01:58:50.614274" elapsed="0.002582"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.620001" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.616929" elapsed="0.003144"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.616908" elapsed="0.003197"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:50.625760" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:50.625809" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:50.620386" elapsed="0.005448"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:50.628066" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:50.625932" elapsed="0.002195"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.625908" elapsed="0.002244"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:50.628186" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:58:50.628407" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:50.628468" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:50.604131" elapsed="0.024363"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.631177" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.629096" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.629076" elapsed="0.002170"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.631903" 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-07-28T01:58:50.631466" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.632564" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:50.632136" elapsed="0.000462"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:50.632654" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:50.632837" 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-07-28T01:58:50.628755" elapsed="0.004107"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:50.633082" 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-07-28T01:58:50.603524" elapsed="0.030061"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.642897" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:50.642582" elapsed="0.000386"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:50.651698" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:50.652038" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;677000000&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-07-28T01:58:50.652185" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:50.643143" elapsed="0.009085"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.652735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:50.652442" elapsed="0.000341"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.655516" 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;677000000&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-07-28T01:58:50.652969" elapsed="0.002626"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.658118" elapsed="0.000022"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.655678" elapsed="0.002510"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.655658" elapsed="0.002562"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:50.664265" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:50.664356" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:50.658512" elapsed="0.005879"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:50.667111" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:50.664528" elapsed="0.002672"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.664498" elapsed="0.002728"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:50.667261" elapsed="0.000038"/>
</return>
<msg time="2026-07-28T01:58:50.667527" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:50.667571" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:50.642133" elapsed="0.025461"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:50.670113" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:50.668179" elapsed="0.001980"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:50.668161" elapsed="0.002021"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.670819" 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-07-28T01:58:50.670381" elapsed="0.000465"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:50.671417" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:50.671056" elapsed="0.000388"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:50.671522" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:58:50.671710" 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-07-28T01:58:50.667842" elapsed="0.003893"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:50.671940" 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-07-28T01:58:50.641471" elapsed="0.030968"/>
</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-07-28T01:58:50.582080" elapsed="0.090435"/>
</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-07-28T01:58:50.573534" elapsed="0.099040"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.673221" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:50.672770" elapsed="8.000673"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:58.685736" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:58.685800" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:58:58.675073" elapsed="0.010802"/>
</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-07-28T01:58:58.674128" elapsed="0.011825"/>
</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-07-28T01:58:50.483208" elapsed="8.202828"/>
</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-07-28T01:58:50.482664" elapsed="8.203440"/>
</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-07-28T01:58:58.693124" 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-07-28T01:58:58.693374" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:58.692921" elapsed="0.000495"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:58.694315" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38457b0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:58.693709" elapsed="0.000648"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.695107" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:58.694697" elapsed="0.000447"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.695819" 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-07-28T01:58:58.695416" elapsed="0.000438"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.696640" 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-07-28T01:58:58.696120" elapsed="0.000557"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:58.697997" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:58.696948" elapsed="0.001092"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.698849" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:58.698321" elapsed="0.000588"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.699648" 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-07-28T01:58:58.699179" elapsed="0.000528"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.700449" 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-07-28T01:58:58.699974" elapsed="0.000554"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.701306" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:58.700849" elapsed="0.000536"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.702132" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:58.701678" elapsed="0.000518"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.703240" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38457b0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:58.702481" elapsed="0.000821"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:58.692388" elapsed="0.010997"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.719625" 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-07-28T01:58:58.719225" elapsed="0.000487"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:58.733932" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:58:58.734032" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:58:58.734209" 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-07-28T01:58:58.719950" elapsed="0.014297"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.738288" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:58.734711" elapsed="0.003688"/>
</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-07-28T01:58:58.718349" elapsed="0.020161"/>
</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-07-28T01:58:58.752416" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:58.751971" elapsed="0.000475"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:58.762572" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:58.763063" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;524000000&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-07-28T01:58:58.763209" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:58.752673" elapsed="0.010562"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.763839" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:58.763515" elapsed="0.000373"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.768332" 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;524000000&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-07-28T01:58:58.764073" elapsed="0.004582"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.772384" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.768837" elapsed="0.003649"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.768783" elapsed="0.003740"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:58.778848" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:58.778896" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:58.772852" elapsed="0.006067"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:58.781263" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:58.779038" elapsed="0.002284"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.778981" elapsed="0.002366"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:58.781381" elapsed="0.000041"/>
</return>
<msg time="2026-07-28T01:58:58.781655" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:58.781700" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:58.751367" elapsed="0.030356"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.784424" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.782392" elapsed="0.002096"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.782374" elapsed="0.002137"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.785183" 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-07-28T01:58:58.784715" elapsed="0.000496"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.785877" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:58.785471" elapsed="0.000433"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:58.785954" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:58:58.786137" 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-07-28T01:58:58.782033" elapsed="0.004129"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:58.786368" elapsed="0.000508"/>
</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-07-28T01:58:58.750304" elapsed="0.036638"/>
</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-07-28T01:58:58.738774" elapsed="0.048220"/>
</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-07-28T01:58:58.800853" 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-07-28T01:58:58.801031" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:58.800669" elapsed="0.000425"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:58:58.801819" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38467f0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:58:58.801292" elapsed="0.000557"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.802372" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:58:58.802045" elapsed="0.000354"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.802948" 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-07-28T01:58:58.802623" elapsed="0.000351"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:58:58.803438" 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-07-28T01:58:58.803166" elapsed="0.000311"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:58:58.804509" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:58.803712" elapsed="0.000830"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.805153" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:58.804788" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.805820" 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-07-28T01:58:58.805426" elapsed="0.000438"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.806482" 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-07-28T01:58:58.806117" elapsed="0.000410"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.807099" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:58:58.806762" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.807735" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:58:58.807375" elapsed="0.000407"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.808377" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38467f0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:58:58.807977" elapsed="0.000446"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:58:58.800239" elapsed="0.008258"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.809123" 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-07-28T01:58:58.808726" elapsed="0.000428"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.809644" 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-07-28T01:58:58.809343" 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-07-28T01:58:58.820949" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:58.820584" elapsed="0.000392"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:58.830594" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:58.831027" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:58:58.831198" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:58.821138" elapsed="0.010143"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.832043" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:58.831628" elapsed="0.000484"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.835814" 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-07-28T01:58:58.832432" elapsed="0.003514"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.839034" elapsed="0.000024"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.836051" elapsed="0.003054"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.836021" elapsed="0.003117"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:58:58.843216" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:58.843262" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:58:58.839391" elapsed="0.003894"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:58.845375" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:58.843361" elapsed="0.002071"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.843342" elapsed="0.002128"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:58.845505" elapsed="0.000035"/>
</return>
<msg time="2026-07-28T01:58:58.845714" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:58:58.845758" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:58:58.820101" elapsed="0.025680"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.848388" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.846350" elapsed="0.002085"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.846333" elapsed="0.002142"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.849117" 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-07-28T01:58:58.848667" elapsed="0.000477"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.849807" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:58.849348" elapsed="0.000489"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:58.849888" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:58.850071" 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-07-28T01:58:58.846016" 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-07-28T01:58:58.850331" 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-07-28T01:58:58.819447" elapsed="0.031371"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.860811" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:58:58.860219" elapsed="0.000624"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:58:58.869858" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:58:58.870252" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;524000000&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-07-28T01:58:58.870491" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:58:58.861015" elapsed="0.009508"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.871351" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:58:58.870894" elapsed="0.000523"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.875821" 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;524000000&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-07-28T01:58:58.871739" elapsed="0.004193"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.879375" elapsed="0.000070"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.876071" elapsed="0.003446"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.876004" elapsed="0.003555"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:58:58.884701" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:58:58.884752" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:58:58.879944" elapsed="0.004832"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:58:58.887282" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:58:58.884855" elapsed="0.002485"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.884836" elapsed="0.002529"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:58:58.887399" elapsed="0.000028"/>
</return>
<msg time="2026-07-28T01:58:58.887656" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:58:58.887701" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:58:58.859754" elapsed="0.027969"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:58:58.890472" elapsed="0.000016"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:58:58.888391" elapsed="0.002129"/>
</branch>
<status status="PASS" start="2026-07-28T01:58:58.888373" elapsed="0.002170"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.891184" 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-07-28T01:58:58.890739" elapsed="0.000472"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:58:58.891867" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:58:58.891467" elapsed="0.000426"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:58:58.891943" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:58:58.892166" 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-07-28T01:58:58.887996" elapsed="0.004195"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:58:58.892470" 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-07-28T01:58:58.858998" elapsed="0.033969"/>
</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-07-28T01:58:58.796039" elapsed="0.097023"/>
</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-07-28T01:58:58.787175" elapsed="0.105980"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.893835" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:58:58.893357" elapsed="8.000718"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:06.907684" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:06.907750" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:06.895921" elapsed="0.011957"/>
</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-07-28T01:59:06.894888" elapsed="0.013123"/>
</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-07-28T01:58:58.686987" elapsed="8.221231"/>
</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-07-28T01:58:58.686436" elapsed="8.221901"/>
</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-07-28T01:59:06.920123" 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-07-28T01:59:06.920292" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:59:06.919932" elapsed="0.000423"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:06.921059" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37346d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:06.920573" elapsed="0.000516"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:06.921596" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:59:06.921286" elapsed="0.000338"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:06.922097" 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-07-28T01:59:06.921818" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:06.922667" 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-07-28T01:59:06.922329" elapsed="0.000364"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:06.923792" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:59:06.922893" elapsed="0.000933"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.924470" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:06.924030" elapsed="0.000487"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.925114" 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-07-28T01:59:06.924749" elapsed="0.000409"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.925750" 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-07-28T01:59:06.925355" elapsed="0.000443"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.926419" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:59:06.926027" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.927053" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:59:06.926680" elapsed="0.000457"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.927983" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37346d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:06.927336" elapsed="0.000693"/>
</kw>
<arg>${XmlsDir}/${flowfile}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:06.919509" elapsed="0.008577"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.936761" 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-07-28T01:59:06.936500" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:06.950980" level="INFO">POST Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/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=node0byxy1h1x8vm3107rf2fmaj62j1.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-07-28T01:59:06.951211" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:59:06.951566" 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-07-28T01:59:06.936983" elapsed="0.014651"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.958530" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:06.952241" elapsed="0.006400"/>
</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-07-28T01:59:06.936005" elapsed="0.022853"/>
</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-07-28T01:59:06.971675" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:06.971242" elapsed="0.000461"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:06.978284" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:06.978788" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;372000000&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-07-28T01:59:06.979028" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:06.971866" elapsed="0.007201"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.979990" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:06.979398" elapsed="0.000661"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.984519" 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;372000000&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-07-28T01:59:06.980384" elapsed="0.004252"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:06.987686" elapsed="0.000020"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:06.984752" elapsed="0.002991"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:06.984719" elapsed="0.003048"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:06.992904" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:06.992987" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:06.987956" elapsed="0.005058"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:06.995361" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:06.993095" elapsed="0.002323"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:06.993076" elapsed="0.002367"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:06.995494" elapsed="0.000071"/>
</return>
<msg time="2026-07-28T01:59:06.995745" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:06.995791" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:59:06.970769" elapsed="0.025046"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:06.998580" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:06.996501" elapsed="0.002127"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:06.996482" elapsed="0.002169"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:06.999370" 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-07-28T01:59:06.998847" elapsed="0.000562"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.000039" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:06.999636" elapsed="0.000430"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:07.000118" elapsed="0.000062"/>
</return>
<msg time="2026-07-28T01:59:07.000339" 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-07-28T01:59:06.996104" elapsed="0.004261"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:07.000619" elapsed="0.000440"/>
</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-07-28T01:59:06.969875" elapsed="0.031249"/>
</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-07-28T01:59:06.959266" elapsed="0.041991"/>
</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-07-28T01:59:07.015224" 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-07-28T01:59:07.015381" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:59:07.015080" elapsed="0.000330"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:07.016120" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3845030&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:07.015658" elapsed="0.000492"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:07.016728" level="INFO">${table_id} = 2</msg>
<var>${table_id}</var>
<arg>${xmlroot}</arg>
<arg>table_id</arg>
<doc>Returns all text of the element, possibly whitespace normalized.</doc>
<status status="PASS" start="2026-07-28T01:59:07.016385" elapsed="0.000370"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:07.017263" 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-07-28T01:59:07.016946" elapsed="0.000343"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:07.017807" 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-07-28T01:59:07.017530" elapsed="0.000340"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:07.018903" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:59:07.018067" elapsed="0.000868"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.019541" level="INFO">${table_id} = 2</msg>
<arg>${table_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:07.019171" elapsed="0.000450"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.020190" 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-07-28T01:59:07.019816" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.020855" 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-07-28T01:59:07.020468" elapsed="0.000431"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.021473" level="INFO">${data} = &lt;?xml version="1.0" encoding="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-07-28T01:59:07.021091" elapsed="0.000430"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.022095" level="INFO">${upddata} = &lt;?xml version="1.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-07-28T01:59:07.021713" elapsed="0.000428"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.022846" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3845030&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:07.022371" elapsed="0.000520"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:07.014675" elapsed="0.008271"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.023615" 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-07-28T01:59:07.023172" elapsed="0.000475"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.024303" 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-07-28T01:59:07.023837" elapsed="0.000634"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.034203" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:07.033892" elapsed="0.000373"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:07.042287" level="INFO">GET Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:07.042610" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:07.042760" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:07.034424" elapsed="0.008376"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.043508" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:07.043078" elapsed="0.000496"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.047622" 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-07-28T01:59:07.043874" elapsed="0.003836"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:07.051041" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:07.047808" elapsed="0.003296"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.047781" elapsed="0.003346"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:07.055141" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:07.055189" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:07.051309" 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-07-28T01:59:07.057432" elapsed="0.000069"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:07.055290" elapsed="0.002248"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.055271" elapsed="0.002291"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:07.057596" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:59:07.057795" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:07.057842" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>Checks 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-07-28T01:59:07.033446" elapsed="0.024420"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:07.060778" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:07.058547" elapsed="0.002279"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.058528" elapsed="0.002321"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.061499" 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-07-28T01:59:07.061040" elapsed="0.000487"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.062164" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:07.061771" elapsed="0.000419"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:07.062281" elapsed="0.000066"/>
</return>
<msg time="2026-07-28T01:59:07.062541" 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-07-28T01:59:07.058137" elapsed="0.004430"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:07.062799" 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-07-28T01:59:07.032823" elapsed="0.030468"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.073022" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:07.072680" elapsed="0.000370"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:07.081855" level="INFO">GET Request : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 path_url=/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=2 
 headers={'User-Agent': 'python-requests/2.34.2', 'Accept-Encoding': 'gzip, deflate', 'Accept': 'application/xml', 'Connection': 'keep-alive', 'Content-Type': 'application/xml', 'Cookie': 'JSESSIONID=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:07.082244" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/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;372000000&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-07-28T01:59:07.082383" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:07.073248" elapsed="0.009162"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.083406" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:07.082697" elapsed="0.000856"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.090572" 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;372000000&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-07-28T01:59:07.084024" elapsed="0.006779"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:07.093172" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:07.090913" elapsed="0.002308"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.090893" elapsed="0.002351"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:07.098124" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:07.098171" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:07.093473" elapsed="0.004721"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:07.100882" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:07.098413" elapsed="0.002527"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.098393" elapsed="0.002571"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:07.101033" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:59:07.101233" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:07.101311" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>Checks 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-07-28T01:59:07.072211" elapsed="0.029125"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:07.104076" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:07.102005" elapsed="0.002117"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:07.101986" elapsed="0.002158"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.104834" 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-07-28T01:59:07.104373" elapsed="0.000489"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:07.105510" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:07.105102" elapsed="0.000435"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:07.105588" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:07.105769" 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-07-28T01:59:07.101625" elapsed="0.004170"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:07.105993" 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-07-28T01:59:07.071530" elapsed="0.034913"/>
</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-07-28T01:59:07.010397" elapsed="0.096121"/>
</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-07-28T01:59:07.001438" elapsed="0.105164"/>
</kw>
<kw name="Sleep" owner="BuiltIn">
<msg time="2026-07-28T01:59:15.107241" level="INFO">Slept 8 seconds.</msg>
<arg>8</arg>
<doc>Pauses the test executed for the given time.</doc>
<status status="PASS" start="2026-07-28T01:59:07.106797" elapsed="8.000708"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn" type="TEARDOWN">
<kw name="DELETE On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:15.121187" level="INFO">DELETE Request : url=http://10.30.170.50: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=node0byxy1h1x8vm3107rf2fmaj62j1.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:15.121254" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:15.109301" elapsed="0.012029"/>
</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-07-28T01:59:15.108209" elapsed="0.013200"/>
</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-07-28T01:59:06.910089" elapsed="8.211446"/>
</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-07-28T01:59:06.909018" elapsed="8.212597"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:59:15.123528" 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-07-28T01:59:15.122837" elapsed="0.000733"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:59:15.123925" elapsed="0.000051"/>
</return>
<status status="PASS" start="2026-07-28T01:59:15.123692" elapsed="0.000331"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:15.123660" elapsed="0.000400"/>
</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-07-28T01:59:15.124357" elapsed="0.000035"/>
</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-07-28T01:59:15.124792" elapsed="0.000035"/>
</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-07-28T01:59:15.125070" elapsed="0.000030"/>
</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-07-28T01:59:15.125343" 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-07-28T01:59:15.125631" elapsed="0.000034"/>
</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-07-28T01:59:15.125882" elapsed="0.000030"/>
</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-07-28T01:59:15.126140" elapsed="0.000032"/>
</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-07-28T01:59:15.126557" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:15.126264" elapsed="0.000374"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:59:15.126239" elapsed="0.000434"/>
</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-07-28T01:59:15.122247" elapsed="0.004501"/>
</kw>
<doc>Iterate on add and delete flow until alien ID is found in Operational Datastore.</doc>
<status status="PASS" start="2026-07-28T01:58:42.272102" elapsed="32.854710"/>
</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-07-28T01:59:15.132872" elapsed="0.000166"/>
</kw>
<status status="PASS" start="2026-07-28T01:59:15.132617" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:15.132597" elapsed="0.000503"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.136643" 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-07-28T01:59:15.133247" elapsed="0.003459"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.246480" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 55.800 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:15.136931" elapsed="0.109647"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:15.246789" elapsed="0.000207"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T01:59:15.132363" elapsed="0.114696"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:15.247328" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:59:15.247245" elapsed="0.000158"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-07-28T01:59:15.127614" elapsed="0.119990"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-07-28T01:58:16.691329" elapsed="58.556311"/>
</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-07-28T01:59:15.330260" 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-07-28T01:59:15.329974" elapsed="0.000353"/>
</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-07-28T01:59:15.332941" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:15.332551" elapsed="0.000461"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:15.332526" elapsed="0.000516"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.333387" 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-07-28T01:59:15.333517" 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-07-28T01:59:15.333203" elapsed="0.000344"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:15.334101" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:59:15.333704" elapsed="0.000447"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.334743" 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-07-28T01:59:15.334323" elapsed="0.000448"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:15.335772" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:15.335853" 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-07-28T01:59:15.335449" 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-07-28T01:59:15.336044" elapsed="0.000355"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.337334" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:15.667089" 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 Tue Jul 28 01:58:16 UTC 2026

  System load:  0.16               Processes:             107
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:58:19 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:15.337008" elapsed="0.330255"/>
</kw>
<msg time="2026-07-28T01:59:15.667351" 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-07-28T01:59:15.336593" elapsed="0.330849"/>
</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-07-28T01:59:15.334996" elapsed="0.332605"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:15.668175" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:59:16.865012" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:16.865432" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:16.865627" 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-07-28T01:59:15.667880" elapsed="1.197809"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:16.866226" elapsed="0.000708"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:16.868169" 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-07-28T01:59:16.867444" elapsed="0.000853"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:16.868838" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:16.868514" elapsed="0.000436"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:16.868428" elapsed="0.000576"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:16.869430" elapsed="0.000139"/>
</return>
<status status="PASS" start="2026-07-28T01:59:16.869133" elapsed="0.000521"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:16.869097" elapsed="0.000612"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:16.869788" 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-07-28T01:59:16.875152" elapsed="0.000489"/>
</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-07-28T01:59:16.875881" elapsed="0.000234"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:16.876325" 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-07-28T01:59:16.870564" elapsed="0.006002"/>
</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-07-28T01:59:15.332004" elapsed="1.544695"/>
</kw>
<msg time="2026-07-28T01:59:16.876779" 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-07-28T01:59:15.331394" elapsed="1.545462"/>
</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-07-28T01:59:15.330900" elapsed="1.546162"/>
</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-07-28T01:59:16.880010" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:16.879575" elapsed="0.000517"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:16.879549" elapsed="0.000577"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:16.880562" 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-07-28T01:59:16.880747" 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-07-28T01:59:16.880351" elapsed="0.000437"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:16.881661" 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.224" 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-07-28T01:59:16.881024" elapsed="0.000708"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:16.882475" 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-07-28T01:59:16.881972" elapsed="0.000531"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:16.883442" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:16.883541" 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-07-28T01:59:16.883128" elapsed="0.000439"/>
</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-07-28T01:59:16.883731" elapsed="0.000381"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:16.885085" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:17.217984" 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 Tue Jul 28 01:58:16 UTC 2026

  System load:  0.16               Processes:             107
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:15 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:16.884736" elapsed="0.333427"/>
</kw>
<msg time="2026-07-28T01:59:17.218257" 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-07-28T01:59:16.884321" elapsed="0.334025"/>
</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-07-28T01:59:16.882737" elapsed="0.335750"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:17.219033" 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-07-28T01:59:17.261813" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:59:17.262085" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:17.262188" 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-07-28T01:59:17.218752" elapsed="0.043490"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:17.262683" elapsed="0.000503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:17.264412" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:17.263709" elapsed="0.000854"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:17.265076" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:17.264747" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:17.264694" elapsed="0.000543"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:17.265703" elapsed="0.000074"/>
</return>
<status status="PASS" start="2026-07-28T01:59:17.265382" elapsed="0.000485"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:17.265341" elapsed="0.000581"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:17.265998" 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-07-28T01:59:17.271531" elapsed="0.000487"/>
</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-07-28T01:59:17.272351" elapsed="0.000264"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:17.272845" elapsed="0.000151"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:17.266796" elapsed="0.006276"/>
</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-07-28T01:59:16.878850" elapsed="0.394368"/>
</kw>
<msg time="2026-07-28T01:59:17.273313" 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-07-28T01:59:16.878036" elapsed="0.395369"/>
</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-07-28T01:59:16.877314" elapsed="0.396264"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:59:15.330567" elapsed="1.943121"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:17.280930" 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-07-28T01:59:17.280350" elapsed="0.000619"/>
</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-07-28T01:59:17.283169" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:17.283253" 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-07-28T01:59:17.282860" elapsed="0.000418"/>
</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-07-28T01:59:17.283441" elapsed="0.000360"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:17.284719" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:17.858447" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:17 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:17.284362" elapsed="0.574374"/>
</kw>
<msg time="2026-07-28T01:59:17.858896" 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-07-28T01:59:17.283984" elapsed="0.575061"/>
</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-07-28T01:59:17.282384" elapsed="0.576881"/>
</kw>
<msg time="2026-07-28T01:59:17.859382" 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-07-28T01:59:17.281815" elapsed="0.577698"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:59:17.281252" elapsed="0.578434"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:59:17.859789" elapsed="0.000078"/>
</return>
<msg time="2026-07-28T01:59:17.860213" 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-07-28T01:59:17.279686" elapsed="0.580586"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:17.861788" 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-07-28T01:59:17.860878" elapsed="0.001131"/>
</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-07-28T01:59:17.864333" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:17.862153" elapsed="0.002236"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:17.862124" elapsed="0.002291"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:17.864929" level="INFO">Start mininet --topo tree,1 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:17.864605" elapsed="0.000372"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:17.867529" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:59:17.865148" elapsed="0.002623"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:18.069801" 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-07-28T01:59:17.867939" elapsed="0.202068"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:18.070784" 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-07-28T01:59:18.070387" elapsed="0.000446"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:18.073727" 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-07-28T01:59:18.071013" elapsed="0.002778"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:18.085443" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "ptcp:6654"
        Controller "tcp:10.30.170.50: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-07-28T01:59:18.073996" elapsed="0.011530"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:59:18.085585" elapsed="0.000056"/>
</return>
<msg time="2026-07-28T01:59:18.085845" 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-07-28T01:59:15.327669" elapsed="2.758203"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:18.086719" 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-07-28T01:59:18.086109" elapsed="0.000654"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:18.087309" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0351b50&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-07-28T01:59:18.086934" elapsed="0.000598"/>
</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-07-28T01:59:18.098186" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:59:18.098490" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node018h1bgf895rjd93wgx0z442ga2.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:59:18 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-07-28T01:59:18.098774" 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-07-28T01:59:18.088644" elapsed="0.010171"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:18.102577" 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-07-28T01:59:18.099139" elapsed="0.003508"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:18.106212" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T01:59:18.106329" 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-07-28T01:59:18.102924" elapsed="0.003440"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:18.107034" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-07-28T01:59:18.107200" 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-07-28T01:59:18.106624" elapsed="0.000701">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-07-28T01:59:18.088332" elapsed="0.019179">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:19.119586" level="INFO">GET Request : url=http://10.30.170.50: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=node018h1bgf895rjd93wgx0z442ga2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:19.120037" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:59:19.120358" 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-07-28T01:59:19.109554" elapsed="0.010844"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.128131" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]},{"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-07-28T01:59:19.120811" elapsed="0.007463"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.132536" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T01:59:19.132674" 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-07-28T01:59:19.128853" elapsed="0.003857"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.133395" 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-07-28T01:59:19.132982" elapsed="0.000519"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-07-28T01:59:19.108682" elapsed="0.024927"/>
</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-07-28T01:59:18.087721" elapsed="1.045966"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:59:15.327185" elapsed="3.806590"/>
</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-07-28T01:59:19.138970" 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-07-28T01:59:19.139199" 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-07-28T01:59:19.138812" elapsed="0.000417"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:19.139929" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38c94e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:19.139432" elapsed="0.000536"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.140484" 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-07-28T01:59:19.140175" elapsed="0.000336"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.140988" 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-07-28T01:59:19.140708" elapsed="0.000306"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.141502" 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-07-28T01:59:19.141209" elapsed="0.000320"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:19.142442" 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-07-28T01:59:19.141735" elapsed="0.000753"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.143060" 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-07-28T01:59:19.142711" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.143671" 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-07-28T01:59:19.143341" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.144222" 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-07-28T01:59:19.143907" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.144800" 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-07-28T01:59:19.144470" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.145350" 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-07-28T01:59:19.145039" elapsed="0.000356"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.145920" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a38c94e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:19.145608" 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-07-28T01:59:19.138386" elapsed="0.007691"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.154450" 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-07-28T01:59:19.154132" elapsed="0.000393"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:19.167363" level="INFO">POST Request : url=http://10.30.170.50: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=node018h1bgf895rjd93wgx0z442ga2.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-07-28T01:59:19.167487" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:59:19.167641" 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-07-28T01:59:19.154708" elapsed="0.012976"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.171664" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:19.167985" elapsed="0.003792"/>
</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-07-28T01:59:19.153667" elapsed="0.018196"/>
</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-07-28T01:59:19.189300" 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-07-28T01:59:19.189445" 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-07-28T01:59:19.189124" elapsed="0.000401"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:19.190301" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3992840&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:19.189721" elapsed="0.000613"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.190877" 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-07-28T01:59:19.190551" elapsed="0.000355"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.191445" 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-07-28T01:59:19.191098" elapsed="0.000391"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:19.191996" 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-07-28T01:59:19.191685" elapsed="0.000373"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:19.192937" 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-07-28T01:59:19.192252" elapsed="0.000717"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.193590" 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-07-28T01:59:19.193200" elapsed="0.000436"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.194249" 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-07-28T01:59:19.193870" elapsed="0.000422"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.194965" 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-07-28T01:59:19.194585" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.195616" 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-07-28T01:59:19.195240" elapsed="0.000423"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.196260" 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-07-28T01:59:19.195891" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.196926" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3992840&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:19.196553" elapsed="0.000417"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:19.188722" elapsed="0.008343"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.197760" 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-07-28T01:59:19.197299" elapsed="0.000492"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.198353" 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-07-28T01:59:19.198028" elapsed="0.000386"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.208271" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:19.207886" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:19.215780" level="INFO">GET Request : url=http://10.30.170.50: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=node018h1bgf895rjd93wgx0z442ga2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:19.216037" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:19.216184" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:19.208479" elapsed="0.007734"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.216735" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:19.216421" elapsed="0.000360"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.220073" 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-07-28T01:59:19.216999" elapsed="0.003157"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:19.223699" elapsed="0.000029"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:19.220374" elapsed="0.003414"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.220332" elapsed="0.003492"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:19.228613" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:19.228679" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:19.224140" elapsed="0.004571"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:19.231719" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:19.228818" elapsed="0.002959"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.228791" elapsed="0.003050"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:19.231879" elapsed="0.000040"/>
</return>
<msg time="2026-07-28T01:59:19.232092" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:19.232137" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-07-28T01:59:19.207437" elapsed="0.024722"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:19.234775" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:19.232790" elapsed="0.002032"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.232772" elapsed="0.002072"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.235513" 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-07-28T01:59:19.235035" elapsed="0.000506"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.236148" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:19.235747" elapsed="0.000427"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:19.236224" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:19.236403" 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-07-28T01:59:19.232399" 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-07-28T01:59:19.236646" elapsed="0.000454"/>
</kw>
<arg>${reqconfpres}</arg>
<arg>${det}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Config Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the config store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:59:19.206772" elapsed="0.030393"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.246925" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:19.246607" elapsed="0.000346"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:19.256928" level="INFO">GET Request : url=http://10.30.170.50: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=node018h1bgf895rjd93wgx0z442ga2.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:19.257899" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:19.258023" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:19.247161" elapsed="0.010924"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.258673" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:19.258383" elapsed="0.000337"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.266638" 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-07-28T01:59:19.258945" elapsed="0.007855"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:19.271739" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:19.267030" elapsed="0.004759"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.266915" elapsed="0.004898"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:19.276482" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:19.276531" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:19.272038" elapsed="0.004516"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:19.278876" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:19.276634" elapsed="0.002310"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.276614" elapsed="0.002356"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:19.279006" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:59:19.279208" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:19.279252" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-07-28T01:59:19.246116" elapsed="0.033159"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:19.281813" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:19.279897" elapsed="0.001972"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.279878" elapsed="0.002015"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.282588" 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-07-28T01:59:19.282093" elapsed="0.000522"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.283219" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:19.282843" elapsed="0.000403"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:19.283297" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:59:19.283510" 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-07-28T01:59:19.279546" elapsed="0.003991"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:19.283739" 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-07-28T01:59:19.245355" elapsed="0.038867"/>
</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-07-28T01:59:19.184423" elapsed="0.099859"/>
</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-07-28T01:59:19.172153" elapsed="0.112193"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.285645" 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-07-28T01:59:19.285181" elapsed="0.000492"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:59:19.285961" elapsed="0.000028"/>
</return>
<status status="PASS" start="2026-07-28T01:59:19.285804" elapsed="0.000217"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.285778" elapsed="0.000269"/>
</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-07-28T01:59:19.286267" elapsed="0.000029"/>
</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-07-28T01:59:19.286491" elapsed="0.000024"/>
</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-07-28T01:59:19.286681" elapsed="0.000021"/>
</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-07-28T01:59:19.286862" 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-07-28T01:59:19.287046" elapsed="0.000022"/>
</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-07-28T01:59:19.287321" elapsed="0.000032"/>
</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-07-28T01:59:19.287586" elapsed="0.000034"/>
</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-07-28T01:59:19.287986" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:19.287734" elapsed="0.000337"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:59:19.287708" elapsed="0.000401"/>
</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-07-28T01:59:19.284802" elapsed="0.003379"/>
</kw>
<doc>Add flow with incorrect in-port format to generate alien ID</doc>
<status status="PASS" start="2026-07-28T01:59:19.133880" elapsed="0.154367"/>
</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-07-28T01:59:19.298190" level="INFO">DELETE Request : url=http://10.30.170.50: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=node018h1bgf895rjd93wgx0z442ga2.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:19.298280" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:19.289963" elapsed="0.008383"/>
</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-07-28T01:59:19.289405" elapsed="0.009005"/>
</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-07-28T01:59:19.309252" elapsed="0.000391"/>
</kw>
<status status="PASS" start="2026-07-28T01:59:19.308687" elapsed="0.001045"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.308630" elapsed="0.001165"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.313054" 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-07-28T01:59:19.310138" elapsed="0.002990"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.476629" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.545 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:19.313294" elapsed="0.163593"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:19.477381" elapsed="0.000408"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T01:59:19.308070" elapsed="0.169812"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:19.478191" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:59:19.478098" elapsed="0.000226"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-07-28T01:59:19.289086" elapsed="0.189307"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-07-28T01:59:15.248395" elapsed="4.230045"/>
</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-07-28T01:59:19.565776" 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-07-28T01:59:19.565425" elapsed="0.000411"/>
</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-07-28T01:59:19.568635" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:19.568245" elapsed="0.000572"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:19.568211" elapsed="0.000645"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.569242" 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-07-28T01:59:19.569368" 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-07-28T01:59:19.569020" elapsed="0.000374"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.569996" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:59:19.569567" elapsed="0.000477"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.570692" 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-07-28T01:59:19.570210" elapsed="0.000509"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:19.571709" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:19.571787" 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-07-28T01:59:19.571351" elapsed="0.000460"/>
</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-07-28T01:59:19.571977" elapsed="0.000378"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.573307" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:19.944475" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:17 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:19.572948" elapsed="0.371739"/>
</kw>
<msg time="2026-07-28T01:59:19.944794" 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-07-28T01:59:19.572544" elapsed="0.372352"/>
</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-07-28T01:59:19.570944" elapsed="0.374101"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:19.945763" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:59:21.090978" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:21.091366" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:21.091511" 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-07-28T01:59:19.945385" elapsed="1.146199"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:21.092275" elapsed="0.000682"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.094308" 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-07-28T01:59:21.093482" elapsed="0.000959"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:21.095161" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:21.094805" elapsed="0.000476"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.094736" 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-07-28T01:59:21.095767" elapsed="0.000111"/>
</return>
<status status="PASS" start="2026-07-28T01:59:21.095491" elapsed="0.000499"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.095424" elapsed="0.000653"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:21.096161" 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-07-28T01:59:21.102290" 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="PASS" start="2026-07-28T01:59:21.103647" elapsed="0.000191"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:21.103995" elapsed="0.000108"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:21.096984" elapsed="0.007174"/>
</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-07-28T01:59:19.567660" elapsed="1.536596"/>
</kw>
<msg time="2026-07-28T01:59:21.104314" 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-07-28T01:59:19.566962" elapsed="1.537415"/>
</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-07-28T01:59:19.566440" elapsed="1.538038"/>
</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-07-28T01:59:21.106641" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:21.106284" elapsed="0.000420"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.106264" elapsed="0.000466"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.107034" 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-07-28T01:59:21.107164" 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-07-28T01:59:21.106889" elapsed="0.000302"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.107768" 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.224" 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-07-28T01:59:21.107352" elapsed="0.000465"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.108359" 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-07-28T01:59:21.107977" elapsed="0.000409"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.109277" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:21.109355" 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-07-28T01:59:21.108985" 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-07-28T01:59:21.109558" elapsed="0.000331"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.110810" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:21.427778" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:19 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:21.110426" elapsed="0.317518"/>
</kw>
<msg time="2026-07-28T01:59:21.428028" 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-07-28T01:59:21.110064" elapsed="0.318050"/>
</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-07-28T01:59:21.108624" elapsed="0.319612"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.428806" 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-07-28T01:59:21.471492" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:59:21.471814" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:21.471914" 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-07-28T01:59:21.428521" elapsed="0.043576"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:21.472571" elapsed="0.000512"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.474251" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:21.473591" elapsed="0.000762"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:21.474968" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:21.474571" elapsed="0.000513"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.474513" elapsed="0.000632"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:21.475416" elapsed="0.000066"/>
</return>
<status status="PASS" start="2026-07-28T01:59:21.475255" elapsed="0.000279"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.475228" elapsed="0.000345"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:21.475623" elapsed="0.000021"/>
</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-07-28T01:59:21.479341" elapsed="0.000484"/>
</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-07-28T01:59:21.480063" elapsed="0.000231"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:21.480528" elapsed="0.000146"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:21.476097" elapsed="0.004652"/>
</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-07-28T01:59:21.105783" elapsed="0.375100"/>
</kw>
<msg time="2026-07-28T01:59:21.480959" 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-07-28T01:59:21.105176" elapsed="0.375860"/>
</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-07-28T01:59:21.104693" elapsed="0.376456"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:59:19.566058" elapsed="1.915175"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.487847" 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-07-28T01:59:21.487449" elapsed="0.000425"/>
</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-07-28T01:59:21.489579" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:21.489660" 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-07-28T01:59:21.489276" elapsed="0.000408"/>
</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-07-28T01:59:21.489845" elapsed="0.000335"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.491077" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:21.821286" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:21 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:21.490757" elapsed="0.330694"/>
</kw>
<msg time="2026-07-28T01:59:21.821554" 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-07-28T01:59:21.490354" elapsed="0.331281"/>
</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-07-28T01:59:21.488826" elapsed="0.332938"/>
</kw>
<msg time="2026-07-28T01:59:21.821818" 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-07-28T01:59:21.488408" elapsed="0.333457"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:59:21.488060" elapsed="0.333972"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:59:21.822088" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:59:21.822321" 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-07-28T01:59:21.486871" elapsed="0.335476"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.823183" 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-07-28T01:59:21.822678" elapsed="0.000548"/>
</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-07-28T01:59:21.825548" elapsed="0.000034"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:21.823326" elapsed="0.002291"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:21.823300" elapsed="0.002344"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:21.826149" level="INFO">Start mininet --topo tree,1 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:21.825823" elapsed="0.000372"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:21.828580" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:59:21.826376" elapsed="0.002262"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:22.032392" 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-07-28T01:59:21.828798" elapsed="0.203801"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:22.033468" 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-07-28T01:59:22.033026" elapsed="0.000494"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:22.034880" 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-07-28T01:59:22.033708" elapsed="0.001233"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:22.043279" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50: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-07-28T01:59:22.035106" elapsed="0.008240"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:59:22.043400" elapsed="0.000077"/>
</return>
<msg time="2026-07-28T01:59:22.043687" 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-07-28T01:59:19.562827" elapsed="2.480887"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:22.044257" 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-07-28T01:59:22.043900" elapsed="0.000401"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:22.044858" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868a39f9e90&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-07-28T01:59:22.044485" elapsed="0.000577"/>
</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-07-28T01:59:22.055174" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:59:22.055666" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01oqypjgi2nysqwfar5znsekgb3.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:59:22 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-07-28T01:59:22.055944" 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-07-28T01:59:22.046173" elapsed="0.009847"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:22.061992" 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-07-28T01:59:22.056520" elapsed="0.005584"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:22.066217" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T01:59:22.066336" 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-07-28T01:59:22.062584" elapsed="0.003787"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:22.067152" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-07-28T01:59:22.067303" 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-07-28T01:59:22.066630" elapsed="0.000780">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-07-28T01:59:22.045877" elapsed="0.021711">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.079095" level="INFO">GET Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.079790" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:59:23.080077" 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-07-28T01:59:23.069343" elapsed="0.010798"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.087955" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]},{"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-07-28T01:59:23.080732" elapsed="0.007303"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.091829" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T01:59:23.091960" 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-07-28T01:59:23.088337" elapsed="0.003659"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.092683" 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-07-28T01:59:23.092233" elapsed="0.000531"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-07-28T01:59:23.068585" elapsed="0.024267"/>
</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-07-28T01:59:22.045248" elapsed="1.047669"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:59:19.562232" elapsed="3.530765"/>
</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-07-28T01:59:23.098636" 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-07-28T01:59:23.098819" 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-07-28T01:59:23.098487" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:23.099552" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d22a0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:23.099104" elapsed="0.000477"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.100086" 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-07-28T01:59:23.099789" elapsed="0.000323"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.100637" 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-07-28T01:59:23.100314" elapsed="0.000350"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.101154" 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-07-28T01:59:23.100874" elapsed="0.000305"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.102009" 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-07-28T01:59:23.101384" elapsed="0.000656"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.102651" 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-07-28T01:59:23.102289" elapsed="0.000404"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.103230" 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-07-28T01:59:23.102903" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.103820" 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-07-28T01:59:23.103489" elapsed="0.000373"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.104377" 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-07-28T01:59:23.104056" elapsed="0.000366"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.104950" 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-07-28T01:59:23.104627" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.105523" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a37d22a0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:23.105198" elapsed="0.000368"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:23.098083" elapsed="0.007539"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.114007" 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-07-28T01:59:23.113740" elapsed="0.000326"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.128202" level="INFO">POST Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.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-07-28T01:59:23.128341" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:59:23.128608" 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-07-28T01:59:23.114224" elapsed="0.014442"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.134759" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:23.129125" elapsed="0.005734"/>
</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-07-28T01:59:23.113264" elapsed="0.021815"/>
</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-07-28T01:59:23.148443" 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-07-28T01:59:23.148596" 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-07-28T01:59:23.148293" elapsed="0.000332"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:23.149279" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a34abab0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:23.148867" elapsed="0.000441"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.149808" 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-07-28T01:59:23.149515" elapsed="0.000319"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.150311" 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-07-28T01:59:23.150039" elapsed="0.000298"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.150840" 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-07-28T01:59:23.150554" elapsed="0.000312"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.151660" 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-07-28T01:59:23.151098" elapsed="0.000593"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.152229" 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-07-28T01:59:23.151897" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.152825" 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-07-28T01:59:23.152488" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.153413" 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-07-28T01:59:23.153073" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.154012" 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-07-28T01:59:23.153670" elapsed="0.000388"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.154663" 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-07-28T01:59:23.154252" elapsed="0.000458"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.155285" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a34abab0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:23.154941" 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-07-28T01:59:23.147924" elapsed="0.007470"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.156177" 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-07-28T01:59:23.155611" elapsed="0.000608"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.156758" 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-07-28T01:59:23.156497" 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-07-28T01:59:23.166241" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:23.165906" elapsed="0.000362"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.173687" level="INFO">GET Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.173930" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:23.174091" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:23.166444" elapsed="0.007674"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.174784" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:23.174389" elapsed="0.000461"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.178839" 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-07-28T01:59:23.175126" elapsed="0.003912"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.182168" elapsed="0.000026"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.179149" elapsed="0.003093"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.179117" elapsed="0.003171"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.185855" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:23.185901" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:23.182564" elapsed="0.003360"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:23.188078" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:23.186013" elapsed="0.002120"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.185994" elapsed="0.002181"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:23.188210" elapsed="0.000039"/>
</return>
<msg time="2026-07-28T01:59:23.188420" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:23.188478" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-07-28T01:59:23.165530" elapsed="0.022973"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.190999" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.189094" elapsed="0.001960"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.189076" elapsed="0.002001"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.191690" 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-07-28T01:59:23.191267" elapsed="0.000450"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.192300" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:23.191931" elapsed="0.000396"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:23.192378" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:23.192574" 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-07-28T01:59:23.188751" elapsed="0.003849"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:23.192799" 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-07-28T01:59:23.164839" elapsed="0.028441"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.202626" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:23.202303" elapsed="0.000350"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.212402" level="INFO">GET Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.213296" level="INFO">GET Response : url=http://10.30.170.50: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;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&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-07-28T01:59:23.213713" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:23.202813" elapsed="0.010980"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.214985" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:23.214244" elapsed="0.000871"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.222692" 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;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&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-07-28T01:59:23.215555" elapsed="0.007314"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.225419" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.223078" elapsed="0.002404"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.223033" elapsed="0.002474"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.229771" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:23.229818" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:23.225710" 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-07-28T01:59:23.232093" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:23.229922" elapsed="0.002228"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.229903" elapsed="0.002272"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:23.232208" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:23.232406" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:23.232449" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-07-28T01:59:23.201866" elapsed="0.030622"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.235086" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.233071" elapsed="0.002061"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.233053" elapsed="0.002101"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.235823" 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-07-28T01:59:23.235347" elapsed="0.000503"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.236447" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:23.236058" elapsed="0.000432"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:23.236542" elapsed="0.000030"/>
</return>
<msg time="2026-07-28T01:59:23.236724" 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-07-28T01:59:23.232736" elapsed="0.004013"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:23.236961" 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-07-28T01:59:23.201203" elapsed="0.036228"/>
</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-07-28T01:59:23.143886" elapsed="0.093622"/>
</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-07-28T01:59:23.135389" elapsed="0.102176"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-07-28T01:59:23.093093" elapsed="0.144610"/>
</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-07-28T01:59:23.243222" 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-07-28T01:59:23.243385" 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-07-28T01:59:23.243073" elapsed="0.000342"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:23.244040" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39933d0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:23.243622" elapsed="0.000455"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.244644" 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-07-28T01:59:23.244283" elapsed="0.000388"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.245159" 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-07-28T01:59:23.244869" elapsed="0.000316"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:23.245719" 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-07-28T01:59:23.245375" elapsed="0.000376"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.246802" 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-07-28T01:59:23.246014" elapsed="0.000821"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.247420" 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-07-28T01:59:23.247087" elapsed="0.000391"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.248007" 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-07-28T01:59:23.247676" elapsed="0.000375"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.248581" 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-07-28T01:59:23.248248" elapsed="0.000376"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.249137" 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-07-28T01:59:23.248831" elapsed="0.000352"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.249706" 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-07-28T01:59:23.249381" elapsed="0.000370"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.250266" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39933d0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:23.249956" elapsed="0.000353"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:23.242681" elapsed="0.007683"/>
</kw>
<kw name="Update Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.258751" 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-07-28T01:59:23.258495" elapsed="0.000313"/>
</kw>
<kw name="PUT On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.274143" level="INFO">PUT Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.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-07-28T01:59:23.274362" level="INFO">PUT Response : url=http://10.30.170.50: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-07-28T01:59:23.274621" 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-07-28T01:59:23.259007" elapsed="0.015715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.280681" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:23.275261" elapsed="0.005519"/>
</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-07-28T01:59:23.257935" elapsed="0.022996"/>
</kw>
<kw name="Check Config Flow" owner="FlowLib">
<kw name="Flow Presence In Config Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.291715" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:23.291382" elapsed="0.000363"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.299097" level="INFO">GET Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.299387" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:23.299605" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:23.291905" elapsed="0.007741"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.300284" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:23.299921" elapsed="0.000430"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.303968" 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-07-28T01:59:23.300630" elapsed="0.003417"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.307212" elapsed="0.000027"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.304157" elapsed="0.003139"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.304126" elapsed="0.003208"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:23.311759" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:23.311808" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:23.307670" 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-07-28T01:59:23.314123" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:23.311908" elapsed="0.002275"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.311889" elapsed="0.002318"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:23.314241" elapsed="0.000034"/>
</return>
<msg time="2026-07-28T01:59:23.314447" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:23.314508" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-07-28T01:59:23.291014" elapsed="0.023517"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:23.317047" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:23.315130" elapsed="0.001964"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.315112" elapsed="0.002003"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.317788" 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-07-28T01:59:23.317309" elapsed="0.000507"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.318383" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:23.318026" elapsed="0.000384"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:23.318517" elapsed="0.000032"/>
</return>
<msg time="2026-07-28T01:59:23.318707" 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-07-28T01:59:23.314770" elapsed="0.003962"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:23.318968" elapsed="0.000406"/>
</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-07-28T01:59:23.290349" elapsed="0.029090"/>
</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-07-28T01:59:23.333748" level="INFO">GET Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.333962" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:23.334095" 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-07-28T01:59:23.327602" elapsed="0.006529"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code} == 404 or ${resp.status_code} == 409">
<return>
<status status="PASS" start="2026-07-28T01:59:23.340226" elapsed="0.000043"/>
</return>
<status status="PASS" start="2026-07-28T01:59:23.334257" elapsed="0.006057"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.334229" elapsed="0.006121"/>
</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-07-28T01:59:23.340595" elapsed="0.000034"/>
</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-07-28T01:59:23.340841" elapsed="0.000029"/>
</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-07-28T01:59:23.327038" elapsed="0.013916"/>
</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-07-28T01:59:23.319626" elapsed="0.021400"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.342689" 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-07-28T01:59:23.342084" elapsed="0.000643"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:59:23.343141" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T01:59:23.342830" elapsed="0.000400"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.342806" elapsed="0.000461"/>
</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-07-28T01:59:23.343556" 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-07-28T01:59:23.343807" elapsed="0.000028"/>
</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-07-28T01:59:23.344056" 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-07-28T01:59:23.344298" 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-07-28T01:59:23.344547" elapsed="0.000029"/>
</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-07-28T01:59:23.344778" elapsed="0.000027"/>
</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-07-28T01:59:23.345004" elapsed="0.000027"/>
</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-07-28T01:59:23.345360" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:23.345117" elapsed="0.000316"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:59:23.345094" elapsed="0.000390"/>
</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-07-28T01:59:23.341579" elapsed="0.003977"/>
</kw>
<doc>Update flow removing Ethertype, this should remove flow from switch and operational DS</doc>
<status status="PASS" start="2026-07-28T01:59:23.238194" elapsed="0.107476"/>
</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-07-28T01:59:23.355584" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01oqypjgi2nysqwfar5znsekgb3.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:23.355647" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:23.347252" elapsed="0.008468"/>
</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-07-28T01:59:23.346740" elapsed="0.009055"/>
</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-07-28T01:59:23.362650" elapsed="0.000205"/>
</kw>
<status status="PASS" start="2026-07-28T01:59:23.362308" elapsed="0.000615"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.362281" elapsed="0.000677"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.365281" 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-07-28T01:59:23.363154" elapsed="0.002206"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.479236" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.587 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:23.365608" elapsed="0.113712"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:23.479529" elapsed="0.000180"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T01:59:23.361993" elapsed="0.117791"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:23.480016" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:59:23.479940" elapsed="0.000147"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-07-28T01:59:23.346400" elapsed="0.133739"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-07-28T01:59:19.479563" elapsed="4.000609"/>
</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-07-28T01:59:23.561366" 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-07-28T01:59:23.561021" elapsed="0.000417"/>
</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-07-28T01:59:23.564839" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:23.564384" elapsed="0.000537"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:23.564352" elapsed="0.000607"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.565389" 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-07-28T01:59:23.565561" 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-07-28T01:59:23.565174" elapsed="0.000426"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.566352" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:59:23.565815" elapsed="0.000602"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.567217" 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-07-28T01:59:23.566666" elapsed="0.000590"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:23.568490" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:23.568601" 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-07-28T01:59:23.568075" elapsed="0.000560"/>
</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-07-28T01:59:23.568860" elapsed="0.000454"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.570548" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:23.899762" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:21 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:23.570085" elapsed="0.329933"/>
</kw>
<msg time="2026-07-28T01:59:23.900107" 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-07-28T01:59:23.569577" elapsed="0.330614"/>
</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-07-28T01:59:23.567583" elapsed="0.332724"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:23.900841" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:59:25.097207" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:25.097667" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:25.097795" 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-07-28T01:59:23.900584" elapsed="1.197271"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:25.098380" elapsed="0.000739"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.100441" 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-07-28T01:59:25.099724" elapsed="0.000881"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:25.101135" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:25.100813" elapsed="0.000458"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.100741" elapsed="0.000587"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:25.101765" elapsed="0.000072"/>
</return>
<status status="PASS" start="2026-07-28T01:59:25.101483" elapsed="0.000432"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.101419" elapsed="0.000552"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:25.102049" 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-07-28T01:59:25.106430" elapsed="0.000521"/>
</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-07-28T01:59:25.107313" elapsed="0.000257"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:25.107730" elapsed="0.000118"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:25.102862" elapsed="0.005042"/>
</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-07-28T01:59:23.563699" elapsed="1.544304"/>
</kw>
<msg time="2026-07-28T01:59:25.108061" 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-07-28T01:59:23.562843" elapsed="1.545274"/>
</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-07-28T01:59:23.562191" elapsed="1.546008"/>
</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-07-28T01:59:25.110315" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:25.110013" elapsed="0.000363"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.109993" elapsed="0.000408"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.110723" 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-07-28T01:59:25.110829" 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-07-28T01:59:25.110581" elapsed="0.000277"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.111434" 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.224" 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-07-28T01:59:25.111033" elapsed="0.000542"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.112141" 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-07-28T01:59:25.111753" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.113060" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:25.113151" 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-07-28T01:59:25.112777" elapsed="0.000399"/>
</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-07-28T01:59:25.113337" elapsed="0.000376"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.114612" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:25.427568" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:23 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:25.114264" elapsed="0.313489"/>
</kw>
<msg time="2026-07-28T01:59:25.427862" 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-07-28T01:59:25.113886" elapsed="0.314074"/>
</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-07-28T01:59:25.112396" elapsed="0.315691"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.428687" 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-07-28T01:59:25.461200" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:59:25.461518" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:25.461645" 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-07-28T01:59:25.428377" elapsed="0.033331"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:25.462120" elapsed="0.000589"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.464001" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:25.463254" elapsed="0.000849"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:25.464685" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:25.464311" elapsed="0.000494"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.464247" elapsed="0.000614"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:25.465277" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-07-28T01:59:25.464983" elapsed="0.000437"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.464949" elapsed="0.000563"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:25.465608" elapsed="0.000045"/>
</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-07-28T01:59:25.471701" elapsed="0.000491"/>
</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-07-28T01:59:25.472434" elapsed="0.000273"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:25.472926" elapsed="0.000144"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:25.466402" elapsed="0.006744"/>
</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-07-28T01:59:25.109507" elapsed="0.363771"/>
</kw>
<msg time="2026-07-28T01:59:25.473369" 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-07-28T01:59:25.108896" elapsed="0.364551"/>
</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-07-28T01:59:25.108396" elapsed="0.365192"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:59:23.561757" elapsed="1.912004"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.480893" 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-07-28T01:59:25.480232" elapsed="0.000711"/>
</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-07-28T01:59:25.483520" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:25.483602" 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-07-28T01:59:25.483071" elapsed="0.000559"/>
</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-07-28T01:59:25.483805" elapsed="0.000349"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.485059" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:25.807198" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:25 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:25.484720" elapsed="0.322652"/>
</kw>
<msg time="2026-07-28T01:59:25.807489" 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-07-28T01:59:25.484331" elapsed="0.323250"/>
</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-07-28T01:59:25.482344" elapsed="0.325364"/>
</kw>
<msg time="2026-07-28T01:59:25.807775" 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-07-28T01:59:25.481770" elapsed="0.326058"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:59:25.481228" elapsed="0.326685"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:59:25.807980" elapsed="0.000045"/>
</return>
<msg time="2026-07-28T01:59:25.808225" 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-07-28T01:59:25.479554" elapsed="0.328702"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.809083" 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-07-28T01:59:25.808615" elapsed="0.000516"/>
</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-07-28T01:59:25.811478" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:25.809220" elapsed="0.002320"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:25.809194" elapsed="0.002373"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.812075" level="INFO">Start mininet --topo tree,1 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:25.811748" elapsed="0.000374"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.814677" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:59:25.812301" elapsed="0.002441"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.963036" 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-07-28T01:59:25.814932" elapsed="0.148306"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.964189" 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-07-28T01:59:25.963735" elapsed="0.000505"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.965752" 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-07-28T01:59:25.964433" elapsed="0.001379"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:25.975589" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50: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-07-28T01:59:25.965986" elapsed="0.009671"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:59:25.975716" elapsed="0.000073"/>
</return>
<msg time="2026-07-28T01:59:25.976131" 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-07-28T01:59:23.558270" elapsed="2.417898"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.976740" 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-07-28T01:59:25.976351" elapsed="0.000433"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:25.977336" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868b0523410&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-07-28T01:59:25.976959" elapsed="0.000591"/>
</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-07-28T01:59:25.987188" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:59:25.987408" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01gk7or7ny5qtd1b7v11p9wf6an4.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:59:25 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-07-28T01:59:25.987566" 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-07-28T01:59:25.978705" elapsed="0.008889"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.990287" 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-07-28T01:59:25.987805" elapsed="0.002531"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.992958" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T01:59:25.993040" 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-07-28T01:59:25.990576" elapsed="0.002488"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:25.993547" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-07-28T01:59:25.993660" 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-07-28T01:59:25.993232" elapsed="0.000505">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-07-28T01:59:25.978382" elapsed="0.015469">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.004701" level="INFO">GET Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.005079" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:59:27.005260" 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-07-28T01:59:26.995632" elapsed="0.009670"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.011731" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]},{"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-07-28T01:59:27.005671" elapsed="0.006146"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.015711" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T01:59:27.015917" 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-07-28T01:59:27.012126" elapsed="0.003827"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.016677" 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-07-28T01:59:27.016201" elapsed="0.000565"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-07-28T01:59:26.994789" elapsed="0.022070"/>
</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-07-28T01:59:25.977743" elapsed="1.039185"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:59:23.557840" elapsed="3.459173"/>
</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-07-28T01:59:27.023447" 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-07-28T01:59:27.023660" 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-07-28T01:59:27.023283" elapsed="0.000410"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:27.024341" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3990c20&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:27.023910" elapsed="0.000460"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.024907" 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-07-28T01:59:27.024592" elapsed="0.000342"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.025399" 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-07-28T01:59:27.025126" elapsed="0.000299"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.025906" 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-07-28T01:59:27.025631" elapsed="0.000300"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.026743" 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-07-28T01:59:27.026122" elapsed="0.000652"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.027334" 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-07-28T01:59:27.027000" elapsed="0.000377"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.027957" 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-07-28T01:59:27.027586" elapsed="0.000427"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.028590" 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-07-28T01:59:27.028240" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.029142" 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-07-28T01:59:27.028834" elapsed="0.000353"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.029703" 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-07-28T01:59:27.029377" elapsed="0.000372"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.030248" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3990c20&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:27.029939" elapsed="0.000351"/>
</kw>
<arg>${XmlsDir}/${flowfile1}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:27.022648" elapsed="0.007698"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.038623" 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-07-28T01:59:27.038352" elapsed="0.000329"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.051360" level="INFO">POST Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.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-07-28T01:59:27.051559" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:59:27.051791" 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-07-28T01:59:27.038899" elapsed="0.012950"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.105235" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.052354" elapsed="0.052951"/>
</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-07-28T01:59:27.037905" elapsed="0.067492"/>
</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-07-28T01:59:27.118481" 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-07-28T01:59:27.118670" 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-07-28T01:59:27.118319" elapsed="0.000381"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:27.119430" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3536e80&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:27.118914" elapsed="0.000559"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.119955" 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-07-28T01:59:27.119670" elapsed="0.000311"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.120443" 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-07-28T01:59:27.120171" elapsed="0.000313"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.120944" 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-07-28T01:59:27.120674" elapsed="0.000295"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.121754" 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-07-28T01:59:27.121160" elapsed="0.000625"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.122322" 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-07-28T01:59:27.121986" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.122898" 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-07-28T01:59:27.122573" elapsed="0.000367"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.123567" 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-07-28T01:59:27.123213" elapsed="0.000398"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.124115" 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-07-28T01:59:27.123803" elapsed="0.000357"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.124689" 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-07-28T01:59:27.124354" elapsed="0.000380"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.125242" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3536e80&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:27.124925" elapsed="0.000418"/>
</kw>
<arg>${XmlsDir}/${fname}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:27.117952" elapsed="0.007447"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.126008" 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-07-28T01:59:27.125607" elapsed="0.000431"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.126477" 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-07-28T01:59:27.126223" 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-07-28T01:59:27.135709" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:27.135376" elapsed="0.000360"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.143589" level="INFO">GET Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.143902" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:27.144050" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:27.135896" elapsed="0.008190"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.144745" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.144361" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.148473" 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-07-28T01:59:27.145061" 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-07-28T01:59:27.151700" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.148670" elapsed="0.003103"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.148638" elapsed="0.003168"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.156102" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:27.156149" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:27.152078" elapsed="0.004094"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:27.158270" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.156252" elapsed="0.002074"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.156232" elapsed="0.002118"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:27.158384" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:59:27.158613" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:27.158658" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-07-28T01:59:27.135000" elapsed="0.023681"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.161389" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.159377" elapsed="0.002058"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.159360" elapsed="0.002111"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.162124" 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-07-28T01:59:27.161671" elapsed="0.000480"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.162732" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:27.162358" elapsed="0.000400"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:27.162807" elapsed="0.000031"/>
</return>
<msg time="2026-07-28T01:59:27.163004" 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-07-28T01:59:27.159023" elapsed="0.004006"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:27.163232" 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-07-28T01:59:27.134353" elapsed="0.029367"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.173195" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:27.172813" elapsed="0.000414"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.181626" level="INFO">GET Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.182587" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:27.182769" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:27.173422" elapsed="0.009375"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.183478" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.183092" elapsed="0.000447"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.186994" 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-07-28T01:59:27.183735" elapsed="0.003411"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.190679" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.187242" elapsed="0.003533"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.187214" elapsed="0.003595"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.196668" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:27.196717" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:27.191122" elapsed="0.005619"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:27.199177" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.196837" elapsed="0.002399"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.196813" elapsed="0.002448"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:27.199297" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:59:27.199533" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:27.199581" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-07-28T01:59:27.172331" elapsed="0.027274"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.202250" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.200277" elapsed="0.002021"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.200256" elapsed="0.002066"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.203015" 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-07-28T01:59:27.202541" elapsed="0.000504"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.203737" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:27.203255" elapsed="0.000509"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:27.203816" elapsed="0.000033"/>
</return>
<msg time="2026-07-28T01:59:27.204049" 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-07-28T01:59:27.199890" elapsed="0.004188"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:27.204289" elapsed="0.000442"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:59:27.171554" elapsed="0.033244"/>
</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-07-28T01:59:27.114002" elapsed="0.090859"/>
</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-07-28T01:59:27.105643" elapsed="0.099279"/>
</kw>
<doc>Add flow match IP and Ethertype IP</doc>
<status status="PASS" start="2026-07-28T01:59:27.017096" elapsed="0.187987"/>
</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-07-28T01:59:27.222671" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.222718" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:27.222819" 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-07-28T01:59:27.214113" elapsed="0.008731"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.228206" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.223095" elapsed="0.005217"/>
</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-07-28T01:59:27.213679" elapsed="0.014813"/>
</kw>
<kw name="Create Flow Variables For Suite From XML File" owner="FlowLib">
<kw name="Get File" owner="OperatingSystem">
<msg time="2026-07-28T01:59:27.236665" 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-07-28T01:59:27.236861" 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-07-28T01:59:27.236507" elapsed="0.000384"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:27.237595" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3967470&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:27.237144" elapsed="0.000481"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.238154" 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-07-28T01:59:27.237842" elapsed="0.000340"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.238680" 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-07-28T01:59:27.238382" elapsed="0.000325"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.239224" 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-07-28T01:59:27.238922" elapsed="0.000328"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.240085" 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-07-28T01:59:27.239474" elapsed="0.000642"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.240691" 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-07-28T01:59:27.240323" elapsed="0.000413"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.241280" 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-07-28T01:59:27.240947" elapsed="0.000383"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.241867" 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-07-28T01:59:27.241541" elapsed="0.000384"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.242427" 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-07-28T01:59:27.242121" elapsed="0.000368"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.243049" 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-07-28T01:59:27.242695" elapsed="0.000401"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.243636" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a3967470&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:27.243288" elapsed="0.000390"/>
</kw>
<arg>${XmlsDir}/${flowfile2}</arg>
<doc>Given the flow XML ${file}, it will create several suite wide variables</doc>
<status status="PASS" start="2026-07-28T01:59:27.236105" elapsed="0.007629"/>
</kw>
<kw name="Add Flow Via Restconf" owner="FlowLib">
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.252376" 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-07-28T01:59:27.252115" elapsed="0.000323"/>
</kw>
<kw name="POST On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.263602" level="INFO">POST Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.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-07-28T01:59:27.263690" level="INFO">POST Response : url=http://10.30.170.50:8181/rests/data/opendaylight-inventory:nodes/node=openflow%3A1/flow-node-inventory:table=0 
 status=201, reason=Created 
 headers={'Location': 'http://10.30.170.50: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-07-28T01:59:27.263898" 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-07-28T01:59:27.252618" elapsed="0.011308"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.266608" level="INFO"/>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.264202" elapsed="0.002451"/>
</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-07-28T01:59:27.251652" elapsed="0.015066"/>
</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-07-28T01:59:27.281156" 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-07-28T01:59:27.281326" 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-07-28T01:59:27.280993" elapsed="0.000362"/>
</kw>
<kw name="Parse Xml" owner="XML">
<msg time="2026-07-28T01:59:27.281992" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39663e0&gt;</msg>
<var>${xmlroot}</var>
<arg>${file}</arg>
<doc>Parses the given XML file or string into an element structure.</doc>
<status status="PASS" start="2026-07-28T01:59:27.281576" elapsed="0.000444"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.282514" 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-07-28T01:59:27.282213" elapsed="0.000328"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.283020" 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-07-28T01:59:27.282731" elapsed="0.000314"/>
</kw>
<kw name="Get Element Text" owner="XML">
<msg time="2026-07-28T01:59:27.283523" 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-07-28T01:59:27.283235" elapsed="0.000314"/>
</kw>
<kw name="Get Data For Flow Put Update" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.284338" 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-07-28T01:59:27.283740" elapsed="0.000629"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.284927" 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-07-28T01:59:27.284585" elapsed="0.000385"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.285501" 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-07-28T01:59:27.285162" elapsed="0.000381"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.286062" 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-07-28T01:59:27.285731" elapsed="0.000378"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.286708" 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-07-28T01:59:27.286331" elapsed="0.000429"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.287341" 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-07-28T01:59:27.286999" elapsed="0.000387"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.287912" level="INFO">${xmlroot} = &lt;Element 'flow' at 0x7868a39663e0&gt;</msg>
<arg>${xmlroot}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T01:59:27.287592" 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-07-28T01:59:27.280587" elapsed="0.007422"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.288621" 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-07-28T01:59:27.288202" elapsed="0.000449"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.289078" 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-07-28T01:59:27.288839" 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-07-28T01:59:27.298368" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:27.298051" elapsed="0.000343"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.305592" level="INFO">GET Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.305833" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:27.305955" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}/flow=${flow_id}?content=config</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:27.298567" elapsed="0.007414"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.306444" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.306184" elapsed="0.000324"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.309784" 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-07-28T01:59:27.306690" elapsed="0.003176"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.312994" elapsed="0.000023"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.309973" elapsed="0.003092"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.309943" elapsed="0.003154"/>
</if>
<kw name="Is Flow Configured" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.317569" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:27.317635" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<status status="PASS" start="2026-07-28T01:59:27.313350" 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-07-28T01:59:27.320419" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.317772" elapsed="0.002720"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.317746" elapsed="0.002771"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:27.320551" elapsed="0.000037"/>
</return>
<msg time="2026-07-28T01:59:27.320762" level="INFO">${presence_flow} = True</msg>
<msg time="2026-07-28T01:59:27.320806" level="INFO">${msg} = </msg>
<var>${presence_flow}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<doc>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-07-28T01:59:27.297690" elapsed="0.023139"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.323315" elapsed="0.000017"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.321421" elapsed="0.001941"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.321404" elapsed="0.001979"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.323999" 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-07-28T01:59:27.323587" elapsed="0.000439"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.324590" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:27.324225" elapsed="0.000391"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:27.324666" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:27.324845" 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-07-28T01:59:27.321082" elapsed="0.003788"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_flow}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:27.325069" 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-07-28T01:59:27.297071" elapsed="0.028475"/>
</kw>
<kw name="Check Operational Flow" owner="FlowLib">
<kw name="Flow Presence In Operational Store" owner="FlowLib">
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.334906" level="INFO">${headers} = {'Accept': 'application/xml'}</msg>
<var>${headers}</var>
<arg>Accept=application/xml</arg>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-07-28T01:59:27.334592" elapsed="0.000341"/>
</kw>
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.342758" level="INFO">GET Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.343681" level="INFO">GET Response : url=http://10.30.170.50: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-07-28T01:59:27.343866" level="INFO">${resp} = &lt;Response [200]&gt;</msg>
<var>${resp}</var>
<arg>session</arg>
<arg>url=${RFC8040_NODES_API}/node=openflow%3A${switch_idx}/flow-node-inventory:table=${table_id}</arg>
<arg>headers=${headers}</arg>
<arg>expected_status=anything</arg>
<doc>Sends a GET request on a previously created HTTP Session.</doc>
<status status="PASS" start="2026-07-28T01:59:27.335118" elapsed="0.008784"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.344567" level="INFO">&lt;Response [200]&gt;</msg>
<arg>${resp}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:27.344181" elapsed="0.000452"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.348959" 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-07-28T01:59:27.344885" elapsed="0.004173"/>
</kw>
<if>
<branch type="IF" condition="${resp.status_code}!=200">
<return>
<value>${False}</value>
<value>${EMPTY}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.351931" elapsed="0.000015"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.349157" elapsed="0.002822"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.349130" elapsed="0.002872"/>
</if>
<kw name="Is Flow Operational2" owner="XmlComparator">
<msg time="2026-07-28T01:59:27.356117" level="INFO">${pres} = True</msg>
<msg time="2026-07-28T01:59:27.356164" level="INFO">${msg} = </msg>
<var>${pres}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${resp.text}</arg>
<arg>${check_id}</arg>
<status status="PASS" start="2026-07-28T01:59:27.352185" elapsed="0.004002"/>
</kw>
<if>
<branch type="IF" condition="'''${msg}'''!='${EMPTY}'">
<kw name="Log" owner="BuiltIn">
<arg>${msg}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:27.358469" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.356265" elapsed="0.002262"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.356246" elapsed="0.002304"/>
</if>
<return>
<value>${pres}</value>
<value>${msg}</value>
<status status="PASS" start="2026-07-28T01:59:27.358584" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:27.358816" level="INFO">${presence_table} = True</msg>
<msg time="2026-07-28T01:59:27.358860" level="INFO">${msg} = </msg>
<var>${presence_table}</var>
<var>${msg}</var>
<arg>${expvalue}</arg>
<arg>${check_id}</arg>
<doc>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-07-28T01:59:27.334125" elapsed="0.024758"/>
</kw>
<kw name="Get Presence Failure Message" owner="FlowLib">
<if>
<branch type="IF" condition="'''${diffmsg}'''!='${EMPTY}'">
<return>
<value>Flow found in ${ds} data store but: ${diffmsg}</value>
<status status="NOT RUN" start="2026-07-28T01:59:27.361548" elapsed="0.000014"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:27.359489" elapsed="0.002104"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.359470" elapsed="0.002145"/>
</if>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.362207" 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-07-28T01:59:27.361804" elapsed="0.000430"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.362809" level="INFO">${msgp} = it is present.</msg>
<var>${msgp}</var>
<arg>${presence}==${True}</arg>
<arg>it is present.</arg>
<arg>it is not present.</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-07-28T01:59:27.362435" elapsed="0.000401"/>
</kw>
<return>
<value>${msgf} ${msgp}</value>
<status status="PASS" start="2026-07-28T01:59:27.362885" elapsed="0.000029"/>
</return>
<msg time="2026-07-28T01:59:27.363098" 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-07-28T01:59:27.359137" elapsed="0.003987"/>
</kw>
<kw name="Should Be Equal" owner="BuiltIn">
<arg>${expected}</arg>
<arg>${presence_table}</arg>
<arg>msg=${msgf}</arg>
<doc>Fails if the given objects are unequal.</doc>
<status status="PASS" start="2026-07-28T01:59:27.363350" elapsed="0.000414"/>
</kw>
<arg>${reqoperpres}</arg>
<arg>${det}</arg>
<arg>${check_id}</arg>
<doc>Wrapper keyword that calls "Flow Presence In Operational Store" and "Get Presence Failure Message" from this library
to verify that the ${expvalue} flow is or is not found in the operational store, depending on whether or not it was ${expected}</doc>
<status status="PASS" start="2026-07-28T01:59:27.333475" elapsed="0.030355"/>
</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-07-28T01:59:27.275606" elapsed="0.088284"/>
</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-07-28T01:59:27.266908" elapsed="0.097039"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.365132" 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-07-28T01:59:27.364728" elapsed="0.000431"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T01:59:27.365377" elapsed="0.000027"/>
</return>
<status status="PASS" start="2026-07-28T01:59:27.365232" elapsed="0.000202"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.365214" 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-07-28T01:59:27.365655" 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-07-28T01:59:27.365832" 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-07-28T01:59:27.366013" 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-07-28T01:59:27.366202" elapsed="0.000026"/>
</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-07-28T01:59:27.366388" 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-07-28T01:59:27.366571" elapsed="0.000021"/>
</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-07-28T01:59:27.366738" 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-07-28T01:59:27.367019" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.366820" elapsed="0.000252"/>
</branch>
<status status="NOT RUN" start="2026-07-28T01:59:27.366804" elapsed="0.000291"/>
</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-07-28T01:59:27.364353" elapsed="0.002792"/>
</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-07-28T01:59:27.205425" elapsed="0.161763"/>
</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-07-28T01:59:27.375825" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01gk7or7ny5qtd1b7v11p9wf6an4.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:27.375920" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T01:59:27.368307" elapsed="0.007682"/>
</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-07-28T01:59:27.367957" elapsed="0.008090"/>
</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-07-28T01:59:27.381548" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-07-28T01:59:27.381197" elapsed="0.000620"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.381170" elapsed="0.000684"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.384306" 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-07-28T01:59:27.382050" elapsed="0.002340"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.509744" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 1.631 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:27.384636" elapsed="0.125199"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:27.510039" elapsed="0.000188"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T01:59:27.380878" elapsed="0.129410"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:27.510561" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T01:59:27.510482" elapsed="0.000168"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-07-28T01:59:27.367733" elapsed="0.142972"/>
</kw>
<doc>Test suite for bug 6917 validation.</doc>
<status status="PASS" start="2026-07-28T01:59:23.480806" elapsed="4.029938"/>
</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-07-28T01:59:27.593300" 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-07-28T01:59:27.593007" elapsed="0.000352"/>
</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-07-28T01:59:27.595916" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:27.595587" elapsed="0.000398"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:27.595562" elapsed="0.000451"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.596338" 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-07-28T01:59:27.596447" 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-07-28T01:59:27.596172" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.597068" level="INFO">Attempting to execute command "sudo mn -c" on remote system "10.30.171.224" 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-07-28T01:59:27.596660" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.597684" 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-07-28T01:59:27.597291" elapsed="0.000420"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:27.598606" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:27.598683" 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-07-28T01:59:27.598292" 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-07-28T01:59:27.598894" elapsed="0.000374"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.600150" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:27.937713" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:25 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:27.599830" elapsed="0.338035"/>
</kw>
<msg time="2026-07-28T01:59:27.938042" 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-07-28T01:59:27.599440" elapsed="0.338684"/>
</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-07-28T01:59:27.597940" elapsed="0.340297"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:27.938773" level="INFO">Executing command 'sudo mn -c'.</msg>
<msg time="2026-07-28T01:59:29.084587" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:29.085044" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:29.085157" 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-07-28T01:59:27.938516" elapsed="1.146700"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:29.085808" elapsed="0.000745"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.088039" 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-07-28T01:59:29.087211" elapsed="0.000964"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:29.088772" elapsed="0.000041"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:29.088359" elapsed="0.000527"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.088305" elapsed="0.000700"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:29.089389" elapsed="0.000166"/>
</return>
<status status="PASS" start="2026-07-28T01:59:29.089136" elapsed="0.000504"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.089100" elapsed="0.000594"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:29.089775" 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-07-28T01:59:29.095842" elapsed="0.000377"/>
</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-07-28T01:59:29.096398" elapsed="0.000230"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:29.096784" elapsed="0.000104"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:29.090656" elapsed="0.006323"/>
</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-07-28T01:59:27.595057" elapsed="1.502018"/>
</kw>
<msg time="2026-07-28T01:59:29.097133" 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-07-28T01:59:27.594434" elapsed="1.502754"/>
</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-07-28T01:59:27.593964" elapsed="1.503305"/>
</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-07-28T01:59:29.099506" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:29.099154" elapsed="0.000412"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.099135" elapsed="0.000455"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.099925" 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-07-28T01:59:29.100029" 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-07-28T01:59:29.099782" elapsed="0.000273"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.100688" 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.224" 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-07-28T01:59:29.100211" elapsed="0.000530"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.101398" 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-07-28T01:59:29.100983" elapsed="0.000492"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.102417" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:29.102515" 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-07-28T01:59:29.102091" elapsed="0.000449"/>
</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-07-28T01:59:29.102703" elapsed="0.000414"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.104156" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:29.441171" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:27 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:29.103796" elapsed="0.337530"/>
</kw>
<msg time="2026-07-28T01:59:29.441408" 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-07-28T01:59:29.103334" elapsed="0.338174"/>
</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-07-28T01:59:29.101700" elapsed="0.339928"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.442152" 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-07-28T01:59:29.474659" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T01:59:29.474964" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:29.475099" 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-07-28T01:59:29.441894" elapsed="0.033282"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:29.475647" elapsed="0.000518"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.477388" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:29.476695" 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-07-28T01:59:29.478042" elapsed="0.000047"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:29.477727" elapsed="0.000446"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.477669" elapsed="0.000557"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:29.478636" elapsed="0.000065"/>
</return>
<status status="PASS" start="2026-07-28T01:59:29.478351" elapsed="0.000479"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.478317" elapsed="0.000575"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:29.478972" 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-07-28T01:59:29.484495" elapsed="0.000477"/>
</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-07-28T01:59:29.485244" elapsed="0.000279"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:29.485776" elapsed="0.000157"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:29.479767" elapsed="0.006247"/>
</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-07-28T01:59:29.098621" elapsed="0.387526"/>
</kw>
<msg time="2026-07-28T01:59:29.486228" 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-07-28T01:59:29.097998" elapsed="0.388314"/>
</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-07-28T01:59:29.097499" elapsed="0.388933"/>
</kw>
<arg>${mininet}</arg>
<status status="PASS" start="2026-07-28T01:59:27.593628" elapsed="1.892909"/>
</kw>
<kw name="Open_Connection_To_Tools_System" owner="SSHKeywords">
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.493610" 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-07-28T01:59:29.492997" elapsed="0.000654"/>
</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-07-28T01:59:29.495955" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:29.496037" 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-07-28T01:59:29.495662" 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-07-28T01:59:29.496236" elapsed="0.000356"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.497501" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:29.828420" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:29 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:29.497161" elapsed="0.331427"/>
</kw>
<msg time="2026-07-28T01:59:29.828672" 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-07-28T01:59:29.496769" elapsed="0.331982"/>
</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-07-28T01:59:29.495115" elapsed="0.333770"/>
</kw>
<msg time="2026-07-28T01:59:29.828939" 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-07-28T01:59:29.494477" elapsed="0.334511"/>
</kw>
<doc>Call Flexible SSH Login, but with default values suitable for Mininet machine.</doc>
<status status="PASS" start="2026-07-28T01:59:29.493923" elapsed="0.335145"/>
</kw>
<return>
<value>${tools_connection}</value>
<status status="PASS" start="2026-07-28T01:59:29.829123" elapsed="0.000057"/>
</return>
<msg time="2026-07-28T01:59:29.829359" 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-07-28T01:59:29.492225" elapsed="0.337160"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.830161" 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-07-28T01:59:29.829730" elapsed="0.000478"/>
</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-07-28T01:59:29.832572" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:29.830303" elapsed="0.002339"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:29.830279" elapsed="0.002389"/>
</if>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:29.833166" level="INFO">Start mininet --topo tree,1 to 10.30.170.50</msg>
<arg>Start mininet ${options} to ${controller}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:29.832844" elapsed="0.000368"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:29.835849" level="INFO">sudo mn --controller 'remote,ip=10.30.170.50,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-07-28T01:59:29.833399" elapsed="0.002509"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:30.037153" 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-07-28T01:59:29.836074" elapsed="0.201196"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:30.037898" 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-07-28T01:59:30.037587" elapsed="0.000361"/>
</kw>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T01:59:30.039397" 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-07-28T01:59:30.038120" elapsed="0.001355"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T01:59:30.052696" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50: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-07-28T01:59:30.039664" elapsed="0.013098"/>
</kw>
<return>
<value>${mininet_conn_id}</value>
<status status="PASS" start="2026-07-28T01:59:30.052818" elapsed="0.000047"/>
</return>
<msg time="2026-07-28T01:59:30.053056" 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-07-28T01:59:27.590691" elapsed="2.462486"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T01:59:30.053741" 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-07-28T01:59:30.053357" elapsed="0.000428"/>
</kw>
<kw name="Create Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:30.054308" level="INFO">Creating Session using : alias=session, url=http://10.30.170.50:8181, headers={'Content-Type': 'application/xml'},                     cookies={}, auth=&lt;requests.auth.HTTPBasicAuth object at 0x7868a3835bd0&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-07-28T01:59:30.053947" elapsed="0.000569"/>
</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-07-28T01:59:30.063834" level="INFO">GET Request : url=http://10.30.170.50: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-07-28T01:59:30.064077" level="INFO">GET Response : url=http://10.30.170.50:8181/rests/data/network-topology:network-topology?content=nonconfig 
 status=200, reason=OK 
 headers={'Set-Cookie': 'JSESSIONID=node01gsgd816ikjllxvo6q44aw16i5.node0; Path=/rests; HttpOnly, rememberMe=deleteMe; Path=/rests; Max-Age=0; Expires=Mon, 27-Jul-2026 01:59:30 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-07-28T01:59:30.064211" 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-07-28T01:59:30.055611" elapsed="0.008629"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:30.066962" 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-07-28T01:59:30.064505" elapsed="0.002508"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:30.069598" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T01:59:30.069681" 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-07-28T01:59:30.067222" elapsed="0.002485"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:30.070184" level="INFO">Argument types are:
&lt;class 'int'&gt;
&lt;class 'str'&gt;</msg>
<msg time="2026-07-28T01:59:30.070291" 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-07-28T01:59:30.069888" elapsed="0.000483">0.0 != 1.0</status>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="FAIL" start="2026-07-28T01:59:30.055304" elapsed="0.015196">0.0 != 1.0</status>
</kw>
<kw name="Check Switches In Topology" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T01:59:31.081516" level="INFO">GET Request : url=http://10.30.170.50: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=node01gsgd816ikjllxvo6q44aw16i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T01:59:31.081915" level="INFO">GET Response : url=http://10.30.170.50: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","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']"}]},{"topology-id":"hwvtep:1"},{"topology-id":"ovsdb:1"},{"topology-id":"pcep-topology","topology-types":{"network-topology-pcep:topology-pcep":{}}}]}} 
 </msg>
<msg time="2026-07-28T01:59:31.082084" 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-07-28T01:59:31.072225" elapsed="0.009898"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.086506" level="INFO">{"network-topology:network-topology":{"topology":[{"topology-id":"flow:1","node":[{"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']"}]},{"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-07-28T01:59:31.082503" elapsed="0.004125"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.090414" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T01:59:31.090557" 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-07-28T01:59:31.086951" elapsed="0.003661"/>
</kw>
<kw name="Should Be Equal As Numbers" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.091400" 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-07-28T01:59:31.090967" elapsed="0.000544"/>
</kw>
<arg>1</arg>
<doc>Check switches are in the topology.</doc>
<status status="PASS" start="2026-07-28T01:59:31.071414" elapsed="0.020192"/>
</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-07-28T01:59:30.054697" elapsed="1.036995"/>
</kw>
<doc>Starts mininet and verify if topology is in operational datastore.</doc>
<status status="PASS" start="2026-07-28T01:59:27.590195" elapsed="3.501587"/>
</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-07-28T01:59:31.093102" 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-07-28T01:59:31.092730" elapsed="0.000425"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.094101" level="INFO">${controller_opt} =   tcp:10.30.170.50:6633 tcp:10.30.170.50: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-07-28T01:59:31.093371" elapsed="0.000768"/>
</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-07-28T01:59:31.105830" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:31.105489" elapsed="0.000404"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.105449" elapsed="0.000471"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.106211" level="INFO">index=62
host=10.30.171.224
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-07-28T01:59:31.106330" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T01:59:31.106075" elapsed="0.000287"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.106964" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.224" 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-07-28T01:59:31.106534" elapsed="0.000496"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.107595" 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-07-28T01:59:31.107190" elapsed="0.000432"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.108576" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:31.108656" 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-07-28T01:59:31.108258" elapsed="0.000423"/>
</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-07-28T01:59:31.108844" elapsed="0.000347"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.110109" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:31.442899" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:29 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:31.109772" elapsed="0.333281"/>
</kw>
<msg time="2026-07-28T01:59:31.443133" 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-07-28T01:59:31.109365" elapsed="0.333848"/>
</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-07-28T01:59:31.107846" elapsed="0.335481"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.443875" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-07-28T01:59:31.506447" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:31.506777" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:31.506910" 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-07-28T01:59:31.443605" elapsed="0.063358"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:31.507365" elapsed="0.000561"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.509267" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:31.508594" elapsed="0.000768"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:31.509899" elapsed="0.000039"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:31.509597" elapsed="0.000417"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.509528" elapsed="0.000555"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:31.510451" elapsed="0.000135"/>
</return>
<status status="PASS" start="2026-07-28T01:59:31.510204" elapsed="0.000464"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.510170" elapsed="0.000552"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:31.510797" 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-07-28T01:59:31.516857" elapsed="0.000158"/>
</kw>
<msg time="2026-07-28T01:59:31.517061" 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-07-28T01:59:31.516253" elapsed="0.000872"/>
</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-07-28T01:59:31.517285" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:31.517482" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:31.511573" elapsed="0.005995"/>
</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-07-28T01:59:31.104917" elapsed="0.412742"/>
</kw>
<msg time="2026-07-28T01:59:31.517722" 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-07-28T01:59:31.104278" elapsed="0.413495"/>
</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-07-28T01:59:31.103632" elapsed="0.414223"/>
</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-07-28T01:59:31.520185" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:31.519873" elapsed="0.000368"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.519854" elapsed="0.000411"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.520564" level="INFO">index=62
host=10.30.171.224
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-07-28T01:59:31.520668" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T01:59:31.520415" elapsed="0.000280"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.521257" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.50:6633 tcp:10.30.170.50:6653" on remote system "10.30.171.224" 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-07-28T01:59:31.520859" elapsed="0.000446"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.521882" 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-07-28T01:59:31.521487" elapsed="0.000420"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.523717" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:31.523841" 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-07-28T01:59:31.522569" elapsed="0.001299"/>
</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-07-28T01:59:31.524100" elapsed="0.000399"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.525396" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:31.855659" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:31 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:31.525057" elapsed="0.330787"/>
</kw>
<msg time="2026-07-28T01:59:31.855909" 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-07-28T01:59:31.524677" elapsed="0.331294"/>
</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-07-28T01:59:31.522134" elapsed="0.333929"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.856435" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.50:6633 tcp:10.30.170.50:6653'.</msg>
<msg time="2026-07-28T01:59:31.878929" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:31.879173" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T01:59:31.879269" 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-07-28T01:59:31.856251" elapsed="0.023092"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:31.879770" elapsed="0.000503"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.881371" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:31.880763" elapsed="0.000733"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:31.881961" elapsed="0.000034"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:31.881674" elapsed="0.000390"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.881628" 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-07-28T01:59:31.882554" elapsed="0.000064"/>
</return>
<status status="PASS" start="2026-07-28T01:59:31.882243" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.882209" elapsed="0.000557"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:31.882842" 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-07-28T01:59:31.890384" elapsed="0.000415"/>
</kw>
<msg time="2026-07-28T01:59:31.890896" 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-07-28T01:59:31.888956" elapsed="0.002078"/>
</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-07-28T01:59:31.891417" elapsed="0.000103"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:31.891718" 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-07-28T01:59:31.883574" elapsed="0.008226"/>
</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-07-28T01:59:31.519314" elapsed="0.372590"/>
</kw>
<msg time="2026-07-28T01:59:31.891958" 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-07-28T01:59:31.518730" elapsed="0.373278"/>
</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-07-28T01:59:31.518066" elapsed="0.374023"/>
</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.50:6633 tcp:10.30.170.50:6653 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-07-28T01:59:31.103099" elapsed="0.789048"/>
</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-07-28T01:59:31.903298" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:31.902995" elapsed="0.000361"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:31.902976" elapsed="0.000404"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.903678" level="INFO">index=62
host=10.30.171.224
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-07-28T01:59:31.903782" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T01:59:31.903549" elapsed="0.000261"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.904360" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.224" 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-07-28T01:59:31.903975" elapsed="0.000432"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.905021" 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-07-28T01:59:31.904633" elapsed="0.000415"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:31.905987" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:31.906065" 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-07-28T01:59:31.905695" 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-07-28T01:59:31.906262" elapsed="0.000558"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:31.907722" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:32.222706" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:31 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:31.907375" elapsed="0.315541"/>
</kw>
<msg time="2026-07-28T01:59:32.223020" 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-07-28T01:59:31.906995" elapsed="0.316125"/>
</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-07-28T01:59:31.905267" elapsed="0.317986"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:32.223897" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T01:59:32.246319" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T01:59:32.246682" level="INFO">${stdout} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6653"
            is_connected: true
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
      ...</msg>
<msg time="2026-07-28T01:59:32.246804" 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-07-28T01:59:32.223575" elapsed="0.023293"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T01:59:32.247272" elapsed="0.000564"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:32.249069" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:32.248352" elapsed="0.000819"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:32.249733" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T01:59:32.249362" elapsed="0.000486"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:32.249306" elapsed="0.000593"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T01:59:32.250257" elapsed="0.000061"/>
</return>
<status status="PASS" start="2026-07-28T01:59:32.250017" elapsed="0.000374"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:32.249984" elapsed="0.000547"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T01:59:32.250616" 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-07-28T01:59:32.257382" elapsed="0.000240"/>
</kw>
<msg time="2026-07-28T01:59:32.257685" 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-07-28T01:59:32.256522" elapsed="0.001266"/>
</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-07-28T01:59:32.258020" elapsed="0.000031"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T01:59:32.258263" elapsed="0.000032"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T01:59:32.251384" elapsed="0.006999"/>
</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-07-28T01:59:31.902415" elapsed="0.356153"/>
</kw>
<msg time="2026-07-28T01:59:32.258655" 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-07-28T01:59:31.901831" elapsed="0.356894"/>
</kw>
<msg time="2026-07-28T01:59:32.258890" level="INFO">${output} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6653"
            is_connected: true
        Controller "tcp:10.30.170.50:6633"
        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-07-28T01:59:31.901307" elapsed="0.357724"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:32.259680" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6653"
            is_connected: true
        Controller "tcp:10.30.170.50:6633"
        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"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T01:59:32.259274" elapsed="0.000475"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T01:59:32.260520" 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-07-28T01:59:32.259978" elapsed="0.000661"/>
</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-07-28T01:59:31.900893" elapsed="0.359841"/>
</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-07-28T01:59:31.892330" elapsed="0.368477"/>
</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-07-28T01:59:32.264934" elapsed="0.000035"/>
</kw>
<status status="NOT RUN" start="2026-07-28T01:59:32.264120" elapsed="0.000900"/>
</branch>
<status status="PASS" start="2026-07-28T01:59:32.264094" elapsed="0.000961"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:32.265495" level="INFO">index=62
host=10.30.171.224
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-07-28T01:59:32.265653" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T01:59:32.265284" elapsed="0.000408"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T01:59:32.266549" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role" on remote system "10.30.171.224" 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-07-28T01:59:32.265913" elapsed="0.000708"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T01:59:32.267438" 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-07-28T01:59:32.266862" elapsed="0.000650"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T01:59:32.268512" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T01:59:32.268593" 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-07-28T01:59:32.268206" elapsed="0.000412"/>
</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-07-28T01:59:32.268790" elapsed="0.000330"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T01:59:32.270032" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T01:59:32.591780" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:32 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T01:59:32.269701" elapsed="0.322252"/>
</kw>
<msg time="2026-07-28T01:59:32.592048" 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-07-28T01:59:32.269303" elapsed="0.322837"/>
</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-07-28T01:59:32.267793" elapsed="0.324473"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T01:59:32.592860" level="INFO">Executing command 'sudo timeout --signal=KILL 30 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-07-28T02:00:02.646219" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T02:00:02.646726" level="INFO">${stdout} = row                                  action  target                  role
------------------------------------ ------- ----------------------- -----
17f648ce-57cf-4710-96de-0031eeb95250 initial "tcp:1...</msg>
<msg time="2026-07-28T02:00:02.646965" 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-07-28T01:59:32.592562" elapsed="30.054470"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:02.647755" elapsed="0.000665"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.649898" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:02.649029" elapsed="0.001001"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:02.650642" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:02.650215" elapsed="0.000604"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:02.650165" elapsed="0.000713"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:02.651328" elapsed="0.000071"/>
</return>
<status status="PASS" start="2026-07-28T02:00:02.651004" elapsed="0.000508"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:02.650969" elapsed="0.000603"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:02.651652" 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-07-28T02:00:02.658778" elapsed="0.000268"/>
</kw>
<msg time="2026-07-28T02:00:02.659110" 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-07-28T02:00:02.657815" elapsed="0.001390"/>
</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-07-28T02:00:02.659501" elapsed="0.000034"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:02.659739" 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-07-28T02:00:02.652583" elapsed="0.007338"/>
</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-07-28T01:59:32.263306" elapsed="30.396751"/>
</kw>
<msg time="2026-07-28T02:00:02.660153" 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-07-28T01:59:32.262467" elapsed="30.397754"/>
</kw>
<msg time="2026-07-28T02:00:02.660381" level="INFO">${output} = row                                  action  target                  role
------------------------------------ ------- ----------------------- -----
17f648ce-57cf-4710-96de-0031eeb95250 initial "tcp:1...</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-07-28T01:59:32.261631" elapsed="30.398788"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.661247" level="INFO">${output} = row                                  action  target                  role
------------------------------------ ------- ----------------------- -----
17f648ce-57cf-4710-96de-0031eeb95250 initial "tcp:1...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T02:00:02.660723" elapsed="0.000592"/>
</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-07-28T02:00:02.661866" elapsed="0.000504"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.663073" level="INFO">row                                  action  target                  role
------------------------------------ ------- ----------------------- -----
17f648ce-57cf-4710-96de-0031eeb95250 initial "tcp:10.30.170.50:6653" other
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 initial "tcp:10.30.170.50:6633" []

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            other
                                     new    "tcp:10.30.170.50:6653" []
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            []
                                     new    "tcp:10.30.170.50:6633" master

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            []
                                     new    "tcp:10.30.170.50:6653" master
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            master
                                     new    "tcp:10.30.170.50:6633" []

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            master
                                     new    "tcp:10.30.170.50:6653" []
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            []
                                     new    "tcp:10.30.170.50:6633" master

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            []
                                     new    "tcp:10.30.170.50:6653" master
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            master
                                     new    "tcp:10.30.170.50:6633" []

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            master
                                     new    "tcp:10.30.170.50:6653" []
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            []
                                     new    "tcp:10.30.170.50:6633" master

row                                  action target                  role
------------------------------------ ------ ----------------------- ------
17f648ce-57cf-4710-96de-0031eeb95250 old                            []
                                     new    "tcp:10.30.170.50:6653" master
d76ae20e-4bf8-4508-bfd8-c0739ead13f9 old                            master
                                     new    "tcp:10.30.170.50:6633" []</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:02.662660" elapsed="0.000561"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T02:00:02.663286" elapsed="0.000043"/>
</return>
<arg>30</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-07-28T01:59:32.261073" elapsed="30.402417"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.665305" 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-07-28T02:00:02.664664" elapsed="0.000679"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T02:00:02.665757" elapsed="0.000041"/>
</return>
<status status="PASS" start="2026-07-28T02:00:02.665470" elapsed="0.000376"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:02.665423" elapsed="0.000459"/>
</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-07-28T02:00:02.666134" 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-07-28T02:00:02.666436" elapsed="0.000051"/>
</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-07-28T02:00:02.666721" 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-07-28T02:00:02.667081" 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-07-28T02:00:02.667284" 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-07-28T02:00:02.667448" elapsed="0.000034"/>
</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-07-28T02:00:02.667628" elapsed="0.000059"/>
</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-07-28T02:00:02.667946" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:02.667752" elapsed="0.000247"/>
</branch>
<status status="NOT RUN" start="2026-07-28T02:00:02.667735" elapsed="0.000287"/>
</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-07-28T02:00:02.664085" elapsed="0.003987"/>
</kw>
<doc>Make a second connection from switch s1 to a controller</doc>
<status status="PASS" start="2026-07-28T01:59:31.091871" elapsed="31.576246"/>
</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-07-28T02:00:02.669687" 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-07-28T02:00:02.669359" elapsed="0.000355"/>
</kw>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.670598" level="INFO">${controller_opt} =   tcp:10.30.170.50: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-07-28T02:00:02.670138" elapsed="0.000488"/>
</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-07-28T02:00:02.681036" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:02.680700" elapsed="0.000411"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:02.680681" elapsed="0.000460"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:02.681426" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:02.681550" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:02.681296" elapsed="0.000282"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.682171" level="INFO">Attempting to execute command "sudo ovs-vsctl set bridge s1 protocols=OpenFlow13" on remote system "10.30.171.224" 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-07-28T02:00:02.681733" elapsed="0.000486"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:02.682826" 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-07-28T02:00:02.682377" elapsed="0.000482"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:02.684151" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:02.684238" 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-07-28T02:00:02.683761" elapsed="0.000502"/>
</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-07-28T02:00:02.684445" elapsed="0.000351"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:02.685809" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:03.006971" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 01:59:32 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:02.685436" elapsed="0.321706"/>
</kw>
<msg time="2026-07-28T02:00:03.007245" 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-07-28T02:00:02.685046" elapsed="0.322296"/>
</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-07-28T02:00:02.683135" elapsed="0.324348"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.008072" level="INFO">Executing command 'sudo ovs-vsctl set bridge s1 protocols=OpenFlow13'.</msg>
<msg time="2026-07-28T02:00:03.030615" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:03.031010" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T02:00:03.031143" 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-07-28T02:00:03.007776" elapsed="0.023435"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:03.031863" elapsed="0.000715"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.034118" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:03.033224" 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-07-28T02:00:03.035001" elapsed="0.000042"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:03.034541" elapsed="0.000581"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.034416" elapsed="0.000761"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:03.035369" elapsed="0.000032"/>
</return>
<status status="PASS" start="2026-07-28T02:00:03.035244" elapsed="0.000191"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.035227" elapsed="0.000249"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:03.035515" elapsed="0.000016"/>
</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-07-28T02:00:03.039565" elapsed="0.000190"/>
</kw>
<msg time="2026-07-28T02:00:03.039805" 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-07-28T02:00:03.038855" elapsed="0.001022"/>
</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-07-28T02:00:03.040043" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:03.040222" 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-07-28T02:00:03.035952" elapsed="0.004357"/>
</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-07-28T02:00:02.680071" elapsed="0.360336"/>
</kw>
<msg time="2026-07-28T02:00:03.040479" 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-07-28T02:00:02.679302" elapsed="0.361230"/>
</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-07-28T02:00:02.678688" elapsed="0.361930"/>
</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-07-28T02:00:03.043172" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:03.042832" elapsed="0.000398"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.042798" elapsed="0.000457"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.043569" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:03.043783" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:03.043411" elapsed="0.000401"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.044481" level="INFO">Attempting to execute command "sudo ovs-vsctl set-controller s1   tcp:10.30.170.50:6633" on remote system "10.30.171.224" 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-07-28T02:00:03.043971" elapsed="0.000581"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.045702" 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-07-28T02:00:03.044810" elapsed="0.000931"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.047109" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:03.047222" 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-07-28T02:00:03.046690" elapsed="0.000566"/>
</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-07-28T02:00:03.047509" elapsed="0.000517"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.048961" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:03.367581" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:02 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:03.048640" elapsed="0.319181"/>
</kw>
<msg time="2026-07-28T02:00:03.367962" 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-07-28T02:00:03.048253" elapsed="0.319842"/>
</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-07-28T02:00:03.046058" elapsed="0.322222"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.369085" level="INFO">Executing command 'sudo ovs-vsctl set-controller s1   tcp:10.30.170.50:6633'.</msg>
<msg time="2026-07-28T02:00:03.392028" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:03.392406" level="INFO">${stdout} = </msg>
<msg time="2026-07-28T02:00:03.392554" 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-07-28T02:00:03.368695" elapsed="0.023915"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:03.393087" elapsed="0.000612"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.394819" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:03.394159" elapsed="0.000754"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:03.395381" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:03.395087" elapsed="0.000431"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.395038" elapsed="0.000557"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:03.395952" elapsed="0.000068"/>
</return>
<status status="PASS" start="2026-07-28T02:00:03.395714" elapsed="0.000381"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.395681" elapsed="0.000468"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:03.396226" 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-07-28T02:00:03.403517" elapsed="0.000706"/>
</kw>
<msg time="2026-07-28T02:00:03.404359" 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-07-28T02:00:03.402307" elapsed="0.002289"/>
</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-07-28T02:00:03.405041" elapsed="0.000053"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:03.405420" elapsed="0.000078"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T02:00:03.396957" elapsed="0.008700"/>
</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-07-28T02:00:03.042114" elapsed="0.363762"/>
</kw>
<msg time="2026-07-28T02:00:03.406191" 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-07-28T02:00:03.041432" elapsed="0.364879"/>
</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-07-28T02:00:03.040842" elapsed="0.365686"/>
</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.50:6633 and OF version ${ofversion}.</doc>
<status status="PASS" start="2026-07-28T02:00:02.678203" elapsed="0.728455"/>
</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-07-28T02:00:03.423761" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:03.423383" elapsed="0.000454"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.423358" elapsed="0.000505"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.424176" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:03.424296" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:03.424019" elapsed="0.000305"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.424903" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.224" 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-07-28T02:00:03.424496" elapsed="0.000455"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.425590" 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-07-28T02:00:03.425111" elapsed="0.000507"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.426567" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:03.426646" 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-07-28T02:00:03.426255" elapsed="0.000414"/>
</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-07-28T02:00:03.426838" elapsed="0.000342"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.428123" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:03.787926" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:03 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:03.427793" elapsed="0.360293"/>
</kw>
<msg time="2026-07-28T02:00:03.788176" 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-07-28T02:00:03.427353" elapsed="0.360926"/>
</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-07-28T02:00:03.425843" elapsed="0.362562"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:03.788978" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T02:00:03.862200" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:03.862537" level="INFO">${stdout} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</msg>
<msg time="2026-07-28T02:00:03.862650" 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-07-28T02:00:03.788694" elapsed="0.074008"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:03.863115" elapsed="0.000609"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.864972" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:03.864231" elapsed="0.000856"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:03.865648" elapsed="0.000038"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:03.865276" elapsed="0.000488"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.865223" elapsed="0.000704"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:03.866348" elapsed="0.000062"/>
</return>
<status status="PASS" start="2026-07-28T02:00:03.866083" elapsed="0.000453"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:03.866034" elapsed="0.000571"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:03.866685" 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-07-28T02:00:03.873726" elapsed="0.000210"/>
</kw>
<msg time="2026-07-28T02:00:03.873999" 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-07-28T02:00:03.872985" elapsed="0.001116"/>
</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-07-28T02:00:03.874354" elapsed="0.000032"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:03.874730" elapsed="0.000035"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T02:00:03.867498" elapsed="0.007362"/>
</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-07-28T02:00:03.422830" elapsed="0.452175"/>
</kw>
<msg time="2026-07-28T02:00:03.875087" 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-07-28T02:00:03.422127" elapsed="0.453030"/>
</kw>
<msg time="2026-07-28T02:00:03.875343" level="INFO">${output} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</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-07-28T02:00:03.421590" elapsed="0.453804"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.876030" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        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"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:03.875649" elapsed="0.000448"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T02:00:03.876844" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T02:00:03.877009" level="FAIL">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:03.876316" elapsed="0.000799">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:03.420970" elapsed="0.456318">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:04.896880" elapsed="0.000033"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:04.896394" elapsed="0.000582"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:04.896362" elapsed="0.000650"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:04.897425" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:04.897607" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:04.897232" elapsed="0.000415"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:04.898423" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.224" 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-07-28T02:00:04.897869" elapsed="0.000645"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:04.899446" 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-07-28T02:00:04.898745" elapsed="0.000748"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:04.900410" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:04.900505" 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-07-28T02:00:04.900120" 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-07-28T02:00:04.900696" elapsed="0.000331"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:04.901905" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:05.239221" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:03 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:04.901580" elapsed="0.337804"/>
</kw>
<msg time="2026-07-28T02:00:05.239482" 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-07-28T02:00:04.901202" elapsed="0.338365"/>
</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-07-28T02:00:04.899718" elapsed="0.339967"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:05.240174" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T02:00:05.302975" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:05.303242" level="INFO">${stdout} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</msg>
<msg time="2026-07-28T02:00:05.303347" 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-07-28T02:00:05.239931" elapsed="0.063467"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:05.303832" elapsed="0.000466"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:05.305427" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:05.304794" elapsed="0.000760"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:05.306088" elapsed="0.000043"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:05.305732" elapsed="0.000473"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:05.305682" elapsed="0.000573"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:05.306656" elapsed="0.000094"/>
</return>
<status status="PASS" start="2026-07-28T02:00:05.306375" elapsed="0.000455"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:05.306342" elapsed="0.000541"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:05.306959" 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-07-28T02:00:05.314371" elapsed="0.000434"/>
</kw>
<msg time="2026-07-28T02:00:05.314908" 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-07-28T02:00:05.313053" elapsed="0.002038"/>
</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-07-28T02:00:05.315359" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:05.315540" 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-07-28T02:00:05.307700" elapsed="0.007925"/>
</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-07-28T02:00:04.895625" elapsed="0.420090"/>
</kw>
<msg time="2026-07-28T02:00:05.315771" 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-07-28T02:00:04.894701" elapsed="0.421118"/>
</kw>
<msg time="2026-07-28T02:00:05.315930" level="INFO">${output} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</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-07-28T02:00:04.893944" elapsed="0.422071"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:05.316499" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        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"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:05.316223" elapsed="0.000325"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T02:00:05.317048" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T02:00:05.317156" level="FAIL">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:05.316703" elapsed="0.000528">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:04.893255" elapsed="0.424087">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:06.333931" elapsed="0.000025"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:06.333583" elapsed="0.000419"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:06.333557" elapsed="0.000470"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:06.334348" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:06.334503" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:06.334183" elapsed="0.000349"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:06.335101" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.224" 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-07-28T02:00:06.334692" elapsed="0.000459"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:06.335725" 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-07-28T02:00:06.335313" elapsed="0.000448"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:06.337001" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:06.337083" 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-07-28T02:00:06.336690" elapsed="0.000417"/>
</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-07-28T02:00:06.337274" elapsed="0.000351"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:06.338552" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:06.707568" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:05 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:06.338180" elapsed="0.369561"/>
</kw>
<msg time="2026-07-28T02:00:06.707831" 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-07-28T02:00:06.337807" elapsed="0.370118"/>
</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-07-28T02:00:06.336255" elapsed="0.371796"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:06.708696" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T02:00:06.731399" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:06.731703" level="INFO">${stdout} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</msg>
<msg time="2026-07-28T02:00:06.731806" 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-07-28T02:00:06.708319" elapsed="0.023538"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:06.732245" elapsed="0.000525"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:06.733982" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:06.733237" elapsed="0.000911"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:06.734554" elapsed="0.000025"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:06.734314" elapsed="0.000318"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:06.734276" elapsed="0.000391"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:06.734906" elapsed="0.000044"/>
</return>
<status status="PASS" start="2026-07-28T02:00:06.734745" elapsed="0.000271"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:06.734724" elapsed="0.000333"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:06.735109" elapsed="0.000021"/>
</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-07-28T02:00:06.739930" elapsed="0.000208"/>
</kw>
<msg time="2026-07-28T02:00:06.740202" 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-07-28T02:00:06.739016" elapsed="0.001278"/>
</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-07-28T02:00:06.740588" elapsed="0.000045"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:06.740847" 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-07-28T02:00:06.735623" elapsed="0.005346"/>
</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-07-28T02:00:06.333011" elapsed="0.408091"/>
</kw>
<msg time="2026-07-28T02:00:06.741179" 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-07-28T02:00:06.332329" elapsed="0.408918"/>
</kw>
<msg time="2026-07-28T02:00:06.741412" level="INFO">${output} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth2
        Port s1
            I...</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-07-28T02:00:06.331797" elapsed="0.409652"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:06.742304" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
        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"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:06.741911" elapsed="0.000460"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T02:00:06.743083" level="INFO">Item found from container 0 times.</msg>
<msg time="2026-07-28T02:00:06.743233" level="FAIL">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:06.742608" elapsed="0.000725">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:06.331263" elapsed="0.412274">'b83d1e9d-d491-4327-b88e-2dd132927bed\n    Bridge s1\n        Controller "tcp:10.30.170.50:6633"\n        fail_mode: secure\n        Port s1-eth2\n            Interface s1-eth2\n        Port s1\n            Interface s1\n                type: internal\n        Port s1-eth1\n            Interface s1-eth1\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-07-28T02:00:07.762681" elapsed="0.000026"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:07.762276" elapsed="0.000557"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:07.762244" elapsed="0.000621"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:07.763227" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:07.763388" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:07.763067" elapsed="0.000351"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:07.764079" level="INFO">Attempting to execute command "sudo ovs-vsctl show" on remote system "10.30.171.224" 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-07-28T02:00:07.763613" elapsed="0.000517"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:07.764787" 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-07-28T02:00:07.764298" elapsed="0.000518"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:07.765937" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:07.766018" 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-07-28T02:00:07.765592" elapsed="0.000451"/>
</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-07-28T02:00:07.766265" elapsed="0.000410"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:07.767725" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:08.116340" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:06 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:07.767329" elapsed="0.349213"/>
</kw>
<msg time="2026-07-28T02:00:08.116638" 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-07-28T02:00:07.766901" elapsed="0.349834"/>
</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-07-28T02:00:07.765087" elapsed="0.351781"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:08.117529" level="INFO">Executing command 'sudo ovs-vsctl show'.</msg>
<msg time="2026-07-28T02:00:08.191144" level="INFO">Command exited with return code 0.</msg>
<msg time="2026-07-28T02:00:08.191608" level="INFO">${stdout} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth...</msg>
<msg time="2026-07-28T02:00:08.191727" 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-07-28T02:00:08.117160" elapsed="0.074621"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:08.192289" elapsed="0.000573"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:08.194219" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:08.193414" elapsed="0.000912"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:08.194903" elapsed="0.000037"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:08.194569" elapsed="0.000444"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:08.194509" elapsed="0.000560"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:08.195439" elapsed="0.000105"/>
</return>
<status status="PASS" start="2026-07-28T02:00:08.195197" elapsed="0.000425"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:08.195163" elapsed="0.000515"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:08.195756" 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-07-28T02:00:08.203310" elapsed="0.000175"/>
</kw>
<msg time="2026-07-28T02:00:08.203529" 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-07-28T02:00:08.202503" elapsed="0.001090"/>
</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-07-28T02:00:08.203756" elapsed="0.000022"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:08.203925" elapsed="0.000022"/>
</kw>
<arg>${current_ssh_connection.index}</arg>
<doc>Restore active SSH connection in SSHLibrary to given index.</doc>
<status status="PASS" start="2026-07-28T02:00:08.196549" elapsed="0.007553"/>
</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-07-28T02:00:07.761599" elapsed="0.442604"/>
</kw>
<msg time="2026-07-28T02:00:08.204258" 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-07-28T02:00:07.760789" elapsed="0.443518"/>
</kw>
<msg time="2026-07-28T02:00:08.204727" level="INFO">${output} = b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
            is_connected: true
        fail_mode: secure
        Port s1-eth2
            Interface s1-eth...</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-07-28T02:00:07.760178" elapsed="0.444579"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:08.205185" level="INFO">b83d1e9d-d491-4327-b88e-2dd132927bed
    Bridge s1
        Controller "tcp:10.30.170.50:6633"
            is_connected: true
        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"</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:08.204927" elapsed="0.000309"/>
</kw>
<kw name="Should Contain X Times" owner="BuiltIn">
<msg time="2026-07-28T02:00:08.205792" 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-07-28T02:00:08.205415" elapsed="0.000447"/>
</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-07-28T02:00:07.759575" elapsed="0.446351"/>
</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-07-28T02:00:03.407049" elapsed="4.798931"/>
</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-07-28T02:00:08.208532" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:08.208223" elapsed="0.000366"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:08.208204" elapsed="0.000409"/>
</if>
<kw name="Get Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:08.208895" level="INFO">index=62
host=10.30.171.224
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-07-28T02:00:08.209002" level="INFO">${current_ssh_connection} = index=62
host=10.30.171.224
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-07-28T02:00:08.208769" elapsed="0.000260"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:08.209601" level="INFO">Attempting to execute command "sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role" on remote system "10.30.171.224" 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-07-28T02:00:08.209183" elapsed="0.000468"/>
</kw>
<kw name="Open Connection" owner="SSHLibrary">
<msg time="2026-07-28T02:00:08.210249" 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-07-28T02:00:08.209810" elapsed="0.000467"/>
</kw>
<kw name="Flexible_SSH_Login" owner="SSHKeywords">
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-07-28T02:00:08.211186" level="INFO">Length is 0.</msg>
<msg time="2026-07-28T02:00:08.211263" 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-07-28T02:00:08.210919" 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-07-28T02:00:08.211446" elapsed="0.000343"/>
</kw>
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Login With Public Key" owner="SSHLibrary">
<msg time="2026-07-28T02:00:08.212670" level="INFO">Logging into '10.30.171.224:22' as 'jenkins'.</msg>
<msg time="2026-07-28T02:00:08.563426" 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 Tue Jul 28 01:59:17 UTC 2026

  System load:  0.08               Processes:             110
  Usage of /:   19.8% of 38.58GB   Users logged in:       0
  Memory usage: 5%                 IPv4 address for ens3: 10.30.171.224
  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: Tue Jul 28 02:00:08 2026 from 10.30.171.32
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:08.212325" elapsed="0.351319"/>
</kw>
<msg time="2026-07-28T02:00:08.563839" 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-07-28T02:00:08.211958" elapsed="0.351990"/>
</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-07-28T02:00:08.210518" elapsed="0.353563"/>
</kw>
<kw name="Execute Command" owner="SSHLibrary">
<msg time="2026-07-28T02:00:08.564709" level="INFO">Executing command 'sudo timeout --signal=KILL 20 ovsdb-client monitor Controller target,role'.</msg>
<msg time="2026-07-28T02:00:28.588360" level="INFO">Command exited with return code -1.</msg>
<msg time="2026-07-28T02:00:28.588959" level="INFO">${stdout} = row                                  action  target                  role
------------------------------------ ------- ----------------------- ------
470476cb-3a3a-4e2d-8db7-9af9aeb866ba initial "tcp:...</msg>
<msg time="2026-07-28T02:00:28.589079" 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-07-28T02:00:08.564374" elapsed="20.024761"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:28.589830" elapsed="0.000672"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.591837" level="INFO"/>
<arg>${stderr}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:28.591044" elapsed="0.000894"/>
</kw>
<if>
<branch type="IF" condition="&quot;${return_stdout}&quot;!=&quot;True&quot;">
<return>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:28.592507" elapsed="0.000040"/>
</return>
<status status="NOT RUN" start="2026-07-28T02:00:28.592151" elapsed="0.000481"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:28.592099" elapsed="0.000585"/>
</if>
<if>
<branch type="IF" condition="&quot;${return_stderr}&quot;!=&quot;True&quot;">
<return>
<value>${stdout}</value>
<status status="PASS" start="2026-07-28T02:00:28.593071" elapsed="0.000081"/>
</return>
<status status="PASS" start="2026-07-28T02:00:28.592806" elapsed="0.000425"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:28.592772" elapsed="0.000514"/>
</if>
<return>
<value>${stdout}</value>
<value>${stderr}</value>
<status status="NOT RUN" start="2026-07-28T02:00:28.593363" elapsed="0.000050"/>
</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-07-28T02:00:28.600673" elapsed="0.000155"/>
</kw>
<msg time="2026-07-28T02:00:28.600874" 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-07-28T02:00:28.599709" elapsed="0.001234"/>
</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-07-28T02:00:28.601123" elapsed="0.000023"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="NOT RUN" start="2026-07-28T02:00:28.601293" 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-07-28T02:00:28.594185" elapsed="0.007193"/>
</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-07-28T02:00:08.207695" elapsed="20.393811"/>
</kw>
<msg time="2026-07-28T02:00:28.601570" 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-07-28T02:00:08.207108" elapsed="20.394510"/>
</kw>
<msg time="2026-07-28T02:00:28.601736" level="INFO">${output} = row                                  action  target                  role
------------------------------------ ------- ----------------------- ------
470476cb-3a3a-4e2d-8db7-9af9aeb866ba initial "tcp:...</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-07-28T02:00:08.206556" elapsed="20.395208"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.602288" level="INFO">${output} = row                                  action  target                  role
------------------------------------ ------- ----------------------- ------
470476cb-3a3a-4e2d-8db7-9af9aeb866ba initial "tcp:...</msg>
<arg>${output}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-07-28T02:00:28.601946" elapsed="0.000387"/>
</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-07-28T02:00:28.602551" elapsed="0.000328"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.603593" level="INFO">row                                  action  target                  role
------------------------------------ ------- ----------------------- ------
470476cb-3a3a-4e2d-8db7-9af9aeb866ba initial "tcp:10.30.170.50:6633" master</msg>
<arg>${output}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:28.603274" elapsed="0.000369"/>
</kw>
<return>
<value>${output}</value>
<status status="PASS" start="2026-07-28T02:00:28.603689" elapsed="0.000031"/>
</return>
<arg>20</arg>
<doc>Execute OvsVsctl List Controllers Command and check for master connection.</doc>
<status status="PASS" start="2026-07-28T02:00:08.206172" elapsed="20.397645"/>
</kw>
<kw name="Check Number Of Flows" owner="FlowLib">
<kw name="GET On Session" owner="RequestsLibrary">
<msg time="2026-07-28T02:00:28.618773" level="INFO">GET Request : url=http://10.30.170.50: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=node01gsgd816ikjllxvo6q44aw16i5.node0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T02:00:28.619902" level="INFO">GET Response : url=http://10.30.170.50: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":37252,"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-10","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":"15","byte-count":"1186","duration":{"second":24,"nanosecond":133000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"15"}},{"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-07-28T02:00:28.620715" 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-07-28T02:00:28.604378" elapsed="0.016422"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.627554" level="INFO">{"opendaylight-inventory:nodes":{"node":[{"id":"openflow:1","flow-node-inventory:port-number":37252,"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-10","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":"15","byte-count":"1186","duration":{"second":24,"nanosecond":133000000}},"flags":"SEND_FLOW_REM"}],"opendaylight-flow-table-statistics:flow-table-statistics":{"packets-looked-up":"16","active-flows":1,"packets-matched":"15"}},{"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-07-28T02:00:27.507Z"},"flow-node-inventory:software":"2.17.11","node-connector":[{"id":"openflow:1:1","flow-node-inventory:port-number":1,"flow-node-inventory:hardware-address":"76:fa:7f:df:76:81","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":"21","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":57,"nanosecond":501000000},"bytes":{"transmitted":"1746","received":"726"},"receive-crc-error":"0"}},{"id":"openflow:1:LOCAL","flow-node-inventory:port-number":4294967294,"flow-node-inventory:hardware-address":"1a:e2:5e:7c:36:4c","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":57,"nanosecond":497000000},"bytes":{"transmitted":"0","received":"0"},"receive-crc-error":"0"}},{"id":"openflow:1:2","flow-node-inventory:port-number":2,"flow-node-inventory:hardware-address":"b2:2a:64:32:d2:7a","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":"21","received":"9"},"receive-over-run-error":"0","receive-errors":"0","transmit-errors":"0","duration":{"second":57,"nanosecond":501000000},"bytes":{"transmitted":"1746","received":"726"},"receive-crc-error":"0"}}],"flow-node-inventory:ip-address":"10.30.171.224","flow-node-inventory:serial-number":"None","flow-node-inventory:snapshot-gathering-status-end":{"succeeded":true,"end":"2026-07-28T02:00:27.524Z"}}]}}</msg>
<arg>${resp.text}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-07-28T02:00:28.621300" elapsed="0.006941"/>
</kw>
<kw name="Get Count" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.631100" level="INFO">Item found from container 1 time.</msg>
<msg time="2026-07-28T02:00:28.631188" 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-07-28T02:00:28.628444" elapsed="0.002768"/>
</kw>
<kw name="Should Be Equal As Integers" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.631752" 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-07-28T02:00:28.631444" elapsed="0.000366"/>
</kw>
<arg>1</arg>
<doc>Check number of flows in the inventory.</doc>
<status status="PASS" start="2026-07-28T02:00:28.604061" elapsed="0.027810"/>
</kw>
<kw name="Report Failure Due To Bug" owner="Utils" type="TEARDOWN">
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-07-28T02:00:28.633093" 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-07-28T02:00:28.632668" elapsed="0.000453"/>
</kw>
<if>
<branch type="IF" condition="('${TEST_STATUS}' != 'FAIL') or ${test_skipped}">
<return>
<status status="PASS" start="2026-07-28T02:00:28.633355" elapsed="0.000031"/>
</return>
<status status="PASS" start="2026-07-28T02:00:28.633205" elapsed="0.000211"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:28.633185" elapsed="0.000256"/>
</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-07-28T02:00:28.633651" 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-07-28T02:00:28.633833" 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-07-28T02:00:28.634016" 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-07-28T02:00:28.634196" 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-07-28T02:00:28.634367" 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-07-28T02:00:28.634566" elapsed="0.000022"/>
</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-07-28T02:00:28.634736" 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-07-28T02:00:28.634998" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-07-28T02:00:28.634817" elapsed="0.000233"/>
</branch>
<status status="NOT RUN" start="2026-07-28T02:00:28.634801" elapsed="0.000273"/>
</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-07-28T02:00:28.632274" elapsed="0.002848"/>
</kw>
<doc>Restore original Connection To Controller And Check OVS Connection</doc>
<status status="PASS" start="2026-07-28T02:00:02.668540" elapsed="25.966627"/>
</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-07-28T02:00:28.643052" level="INFO">DELETE Request : url=http://10.30.170.50: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=node01gsgd816ikjllxvo6q44aw16i5.node0', 'Content-Length': '0', 'Authorization': 'Basic YWRtaW46YWRtaW4='} 
 body=None 
 </msg>
<msg time="2026-07-28T02:00:28.643643" level="INFO">DELETE Response : url=http://10.30.170.50: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-07-28T02:00:28.643780" level="FAIL">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.50: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-07-28T02:00:28.636691" elapsed="0.007504">HTTPError: 409 Client Error: Conflict for url: http://10.30.170.50: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-07-28T02:00:28.636223" elapsed="0.008040"/>
</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-07-28T02:00:28.649437" elapsed="0.000227"/>
</kw>
<status status="PASS" start="2026-07-28T02:00:28.649117" elapsed="0.000598"/>
</branch>
<status status="PASS" start="2026-07-28T02:00:28.649091" elapsed="0.000658"/>
</if>
<kw name="Write" owner="SSHLibrary">
<msg time="2026-07-28T02:00:28.652480" 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-07-28T02:00:28.649946" elapsed="0.002614"/>
</kw>
<kw name="Read Until" owner="SSHLibrary">
<msg time="2026-07-28T02:00:28.781821" level="INFO">*** Stopping 1 controllers
c0 
*** Stopping 2 links
..
*** Stopping 1 switches
s1 
*** Stopping 2 hosts
h1 h2 
*** Done
completed in 58.884 seconds
[?2004h[jenkins@releng-14419-793-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-07-28T02:00:28.652781" elapsed="0.129139"/>
</kw>
<kw name="Close Connection" owner="SSHLibrary">
<doc>Closes the current connection.</doc>
<status status="PASS" start="2026-07-28T02:00:28.782241" elapsed="0.000235"/>
</kw>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="PASS" start="2026-07-28T02:00:28.648800" elapsed="0.133761"/>
</kw>
<kw name="Delete All Sessions" owner="RequestsLibrary">
<msg time="2026-07-28T02:00:28.782914" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-07-28T02:00:28.782804" elapsed="0.000192"/>
</kw>
<doc>Stops mininet.</doc>
<status status="PASS" start="2026-07-28T02:00:28.635995" elapsed="0.147077"/>
</kw>
<doc>Test suite for Split connection bug.</doc>
<status status="PASS" start="2026-07-28T01:59:27.511582" elapsed="61.271535"/>
</suite>
<status status="PASS" start="2026-07-28T01:53:36.145778" elapsed="412.640161"/>
</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>
